android内存分析工具记录,请利用好最后2个神器

相机见证了java内存暴增和native持续增长的问题,因此这里记录一下使用的工具情况,方便后续继续使用

一、java 内存

如果是java层的内存可以直接借助leakCanary工具,配置也很简单,直接在build.gradle中添加依赖即可:
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.11'

二、native内存

native非常难测,除了bitmap占用可能导致native很高,其余的大概率就是底层的问题。

那么我们常用的排除手段,有以下几种:

1、profile

一个设备只能连接一个android studio,而且很慢,但好处是可以抓native的head,不过对于我们上层来说,也看不出是什么。

2、dumpsys meminfo命令

该命令可以直接查询某个进程占用内存情况:adb shell dumpsys meminfo com.hryt.camera

下面这个命令可以极大的简化用profile分析的情况,轻松通过adb命令找到native自动轮询输出

复制代码
while true;do dumpsys meminfo com.hryt.camera ;sleep 3;done;

三、其他解法

https://ui.perfetto.dev/

一代高性能分析工具,可以通过里面生成录制命令

相关推荐
liu_sir_3 分钟前
安卓设置界面-关于手机修改为关于设备
android·大数据·elasticsearch
new_bie_B16 分钟前
Android16 应用安装流程源码分析
android
帅次19 分钟前
LazyColumn 懒加载、items 与 key
android·flutter·kotlin·android studio·webview
zhangphil21 分钟前
Android显示系统RenderThread绘制HARDWARE/普通格式Bitmap与GPU与CPU处理机制
android
美狐美颜SDK开放平台1 小时前
什么是美颜SDK?高并发场景下的企业级美颜SDK如何开发?
android·人工智能·ios·美颜sdk·第三方美颜sdk·视频美颜sdk
YF02111 小时前
Protobuf与 gRPC 的关系:从理论到 Android + Go 实战通信全解析
android·后端·grpc
YF02111 小时前
Android 卡顿性能优化专项治理:从 ANR 根源到系统性重构实践
android·app
蒙奇·D·路飞-2 小时前
Kotlin安卓app版本自动升级设计实现
android
博客zhu虎康2 小时前
小程序按钮实现先表单校验再走手机号获取功能
android·javascript·小程序
码途漫谈2 小时前
Easy-Vibe高级开发篇阅读笔记(十三)——多平台开发之Android App 原生开发
android·人工智能·笔记·ai·开源·ai编程