码迷,mamicode.com
首页 > 移动开发 > 详细

Android内存泄露总结

时间:2014-07-01 21:27:23      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:android   style   http   使用   文件   数据   

Android可能发生内存泄露的地方总结:

1.查询数据库没有关闭游标

2.构建adapter时,没有使用缓存的convertView

3.Bitmap对象不使用的时候调用recycle()方法释放内存

4.释放对象的引用

5.单例模式引用context,如果使用actvitiy-context,会造成内存泄露,

可以使用getApplicationContext()); 或getApplication()代替。 

 

参考文档:

A?n?d?r?o?i?d? ?内?存?泄?漏?调?试

http://wenku.baidu.com/view/3dbfb0a1b0717fd5360cdc47.html

 

分析内存泄露的办法:

1.使用MAT分析内存泄露

2.使用procrank记录内存走势

使用procrank来跟踪某进程的使用哪个情况我们常常借助与脚本。这样就可以查看某一段时间的内存变化。
如创建一个文件:trackmem.sh chmod 775 trackmem.sh
内容如下:
#!/bin/bash

while true; do
adb shell procrank | grep "com.example.studymemroyleak"
sleep 1
done
运行该脚本:
./trackmem.sh

 这个脚本的用途是每1秒钟让系统输出一次指定进程的内存使用状况,主要观察Uss的数据,可以直接把数据输出到xls表格

 ./trackmem.sh > data.xls

然后生成折线图(选择只绘制线条),注意去掉数字的单位(K)。生成图表时,先选择数据,然后再点插入图表即可。

 

 

 

Android内存泄露总结,布布扣,bubuko.com

Android内存泄露总结

标签:android   style   http   使用   文件   数据   

原文地址:http://www.cnblogs.com/androidstudy/p/3816778.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!