前言
内层泄漏是Android开发无法避开的坑。除去面试经常问,实际项目中也必须要解决内层泄漏问题,查到了内层泄漏原因,以后写代码就知道怎么避坑了。
步骤
1.用Android Studio打开当前应用项目,连接手机,打开当前项目App;
2.点击Android Studio左下角底部按钮,出现以下界面;
3.开启一个新的分析会话(start a new profiling session),根据包名引入你手机目前运行进行分析的app;
4.开启完成,已连接。此时正常使用你的App功能,把可能出现内层泄漏的模块测试一下;
5.测试完成,选择MEMORY,选择_capture_ _heap dump,_然后点击record。记录下你的测试的内层泄漏日志(日志也可以下载下来hprof文件);
6.第5步生成内层泄漏日志之后,后面会显示内层泄漏个数和方法列表。如果Leaks的数目不是0,就会出现内层泄漏个数并显示黄色叹号。这个时候找到下方显示黄色叹号的方法类。右键找到对应references方法。再根据references对应的类名,找到在项目中调用它的地方。然后就找到内层泄漏的地方啦。
结尾
除了AS自带的Profiler工具,还可以引用leakcanary工具,只需要在应用的gradle中debugImplementation它即可:
debugImplementation ‘com.squareup.leakcanary:leakcanary-android:2.9.1’
最后
如果想要成为架构师或想突破20~30K薪资范畴,那就不要局限在编码,业务,要会选型、扩展,提升编程思维。此外,良好的职业规划也很重要,学习的习惯很重要,但是最重要的还是要能持之以恒,任何不能坚持落实的计划都是空谈。
如果你没有方向,这里给大家分享一套由阿里高级架构师编写的《Android八大模块进阶笔记》,帮大家将杂乱、零散、碎片化的知识进行体系化的整理,让大家系统而高效地掌握Android开发的各个知识点。
相对于我们平时看的碎片化内容,这份笔记的知识点更系统化,更容易理解和记忆,是严格按照知识体系编排的。
欢迎大家一键三连支持,若需要文中资料,直接扫描文末CSDN官方认证微信卡片免费领取↓↓↓(文末还有ChatGPT机器人小福利哦,大家千万不要错过)
PS:群里还设有ChatGPT机器人,可以解答大家在工作上或者是技术上的问题