原因:
造成内存泄漏的网上很多,单例,handler ,内部类持有外部类的对象,广播注册未反注册,静态变量
资源未释放等
工具
- MAT 插件 :可以直观的观察内存变化情况
- dumpsys meminfo -packagename :观察视图是否存在泄漏
- 继承leakcanary :定位具体代码位置
- Android Studio 的Profile工具
确认内存是否存在泄漏
- 多次打开关闭应用 使用dumpsys meminfo 观察该应用内存情况,是否每次打开关闭后内存只增加不减少


- 如果每次打开内存只增不减,说明存在内存泄漏
- dumpsys meminfo -packageName 观察Views 和Activities,如果每次打开数据只增不减,说明内存泄漏,
正常情况下,关闭后很快就会变成0
本文探讨了Android应用中内存泄漏的原因,如单例、Handler、内部类等,并介绍了多种检测内存泄漏的工具,如MAT插件、dumpsys meminfo命令、LeakCanary以及Android Studio的Profile工具。通过检查应用在打开关闭后的内存变化,可以确定是否存在内存泄漏问题。
订阅专栏 解锁全文
689

被折叠的 条评论
为什么被折叠?



