- 博客(40)
- 收藏
- 关注
原创 malloc debug单个app进程(查看native内存)
根据命令使用symbols解析,格式如上面的格式,这里本地执行的命令如下(symbols 要和 手机版本对应,比如你的手机版本是 22.5.30 ,symbols也要下22.5.30版本的,如果还不行就在文件夹里多试几次symbols路径)打开需要检测的app,这个过程可能会出现卡顿,或是进程起不来的情况,若等待2分钟后app依然起不来,退到后台,清理一下后台,从 d 步骤开始重新执行。执行前:确定一下手机版本和对应的symbols文件,在corgi上下载symbols文件,用于解析heap文件。
2024-05-10 13:41:30 249
原创 堆内存检视方案(Native Heap Insight)
获取native堆对应的memory map和malloc info.信息,体现出PSS占用的数据和堆分配器内部的统计,但却无法直接和业务侧的使用情况相关联。它体现的是业务实际关心的内存大小,这也是本方案内存统计的层面。比如native OOM问题,meminfo仅能给出该业务在问题发生时的内存使用数值,但无法分析该业务的哪部分逻辑在使用,使用了多久、多大、多少次。这里的调用栈信息、出于性能上的平衡,做了归并处理、只记录一份,即可能有其他的调用栈也符合类似的特征,但这里并未显示。
2024-05-10 11:30:47 1027
原创 内存拆解分析表:学习版[图片]
对拆解system中主要是对比测试机和对比机之间的差距,测试机那些地方高于对比机拆解表,作为理解在拆解表中system测试机比对比机多出113M这说明是有问题的上面拆解表是模块2的集合版本从上面表我们可以看出来内存主要出现最大差异的是Code我们可以根据此表进程计算拆解,模块2主要是模块1的总体进程所以我们要知道模块2中的Code,那些在模块1中这个公式只是计算出各个模块2中的各项指标,只是案例不要和自己项目中进行对比,但是公式是一样的,没有什么区别。
2024-05-10 11:03:25 608
原创 解决常见的Android问题
一般应用被查杀主要原因都会提现到被查杀的时候,查杀的思路就是看进程是因为什么被杀的开始查看dumpstate_board文件一般来看这种文件主要是因为查杀的时候显示因为高温限频被查杀,或者是页面出现卡顿也有可能是高温导致的所以一把情况这个时候都是需要让热或者是功耗帮忙看一下是否正常或者是否能修复用上面这张图片举例子如何查看是不会因为高温导致的卡顿就需要看壳温和限频VIRTUAL-SENSOR(壳的温度) 24977(24°)lmh_cpu7(CPU限频,手机CPU0-7) 0(限频的大小)
2024-05-10 09:12:25 784 1
原创 git命令
在进行时,都会用到版本控制工具,如svn、Git等,随着Git的发展,渐渐的被越来越多的人使用,甚至慢慢在取代svn的地位。下面将从来介绍Git的使用。当然下面所涉及的命令都是在Git bash中操作的,所有必须先安装Git,至于怎样安装Git,这里就不介绍了,网上有一大把安装教程。
2024-04-08 23:55:30 1680
原创 git 操作指南
git branch -d hotfixes/BJVEP933 # 删除分支hotfixes/BJVEP933(本分支修改已合并到其他分支)git checkout --track hotfixes/BJVEP933 # 检出远程分支hotfixes/BJVEP933并创建本地跟踪分支。
2023-09-15 08:43:45 39
原创 专高3第一周
JsonServicelmpi//登录发放证书。TIaozhuanActivity//详情页面。GlidelUrl//图片解析类。ApisService//接口。Constant//基准网址。//主页面presenter。//登录presenter。添加mylibrary。gesdiwd//路由。
2023-06-23 20:52:02 40
原创 Android6.0权限和SharedPreferences存储
Android6.0权限 SharedPreferences存储 外部存储-SD卡 外部存储-图片存储功能
2023-03-29 08:41:31 33
原创 ViewPager及ViewPager2
ViewPager ViewPager常用方法 ViewPager与Fragment结合使用 ViewPager2
2023-03-27 10:58:41 41
原创 Fragment的基本使用
/add方法参数,第一个要放入的容器(布局的Id),第二个是fragment对象。* @param inflater 实体加载器,用于加载一个fragment的视图。--一定要注意的是:name属性是fragment的全限定名-->//3,调用事务中相应的方法,来操作fragment。//2,获取fragment的事物对象,并开启事务。* fragment第一次创建用户界面时回调的方法。fragment的状态,切换前是什么状态切换后还是什么状态。//1,创建fragment的管理对象。
2023-03-23 08:46:24 131
原创 Notitfcation 通知
/ builder.setContentInfo("我是附加信息");builder.setContentTitle("我是标题");builder.setContentText("我是内容");// builder.setContentTitle("大图通知");//参数一 id 通知的id(稍后介绍意义) 参数二 通知对象。builder.setContentTitle("列表通知");// builder.setTicker("我是提示信息");
2023-03-22 20:37:28 129 1
原创 PopupWindow弹窗
上下文菜单 显示菜单:AlertDialog.Builder() 事件监听:setSingleChoiceItems()<item android:id="@+id/green" android:title="绿色"上面这里是获取加载资源就是在最先创健好的menu里的xml文件。编写布局:res里面创建一个menu的文件夹Android。pp:showAsAction="never"是弹窗的位置。这个长按进行展示的一个菜单主要是添加的一个长按事件。1、先在,menu文件里创建一个xml布局文件。
2023-03-22 20:11:11 126
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人