内存泄漏原因是:长生命周期的对象拥有短生命周期对象的引用,本该回收的对象因为引用问题无法回收。
内存泄漏常见原因:
1、集合类
2、静态成员,常量
3、单例模式
4、未关闭释放的资源
5、Handdler/Thread 非静态内部类
内存泄漏排查: 步骤1:
进入app后到处多点几次,可以使用monkey测试。
步骤3 4:
步骤6:使用SDK工具platform-tools/hprof-conv.exe 把 a.hprof 编译为 a_mat.hprof
步骤7:使用Eclipse插件打开a_mat.hprof 下载链接:https://www.eclipse.org/mat/downloads.php
步骤11:在AS中AddfriendActivity中查看关于BaseApp的引用
步骤12:解决问题
内存泄漏排查和修复就到这里,更多的是需要自己细心去找。