android PhoneStateListener 内存泄露的问题
来源:互联网 发布:模拟加密狗软件 编辑:程序博客网 时间:2024/06/05 06:51
android PhoneStateListener 内存泄露的问题
在项目开发过程中通过ddms的堆看到内存一直持续在增长,很容易想到发生内存泄露,引用没有被释放,通过dump 最终发现是 PhoneStateListener 内部对自己有一个强引用的handler,如果是在主线程中引用的PhoneStateListener,那么他将释放不掉,引发内存泄露。
解决方法就好的是在子线程中创建 PhoneStateListener ,其次是在PhoneStateListener中使用弱引用。比如需要activity的对象。那么就要在创建PhoneStateListener的时候将传入activity的弱引用 WeakRef ,这样就不用担心内存泄露的问题,不过这种弱引用的方式用起来简单一些,但是他还有个小问题,就是PhoneStateListener自己是释放不掉的,虽然他不再持有外部的一些引用,那么就要求不要在PhoneStateListener里面有过多的资源创建。
0 0
- android PhoneStateListener 内存泄露的问题
- PhoneStateListener 引起的内存泄露
- android内存泄露的问题
- android内存泄露的问题
- android内存泄露的问题
- android内存泄露的问题
- android内存泄露的问题
- android内存泄露的问题
- android内存泄露的问题
- android内存泄露的问题
- Android的内存泄露问题
- Android内存泄露的问题
- Android 内存泄露问题
- android内存泄露问题
- 一个常见的android内存泄露 问题
- 一个常见的android内存泄露 问题
- [Android] 关于WebView的内存泄露问题
- Android内存泄露造成的OOM问题
- python 当list,dic作为默认参数的正确写法
- 支持向量机(SVM)中核函数的选择
- jquery源码阅读之jquery.extend
- 什么是Java集合API?
- Android studio运行时乱码 编码问题 閿欒: 缂栫爜UTF-8鐨勪笉鍙槧灏勫瓧绗?
- android PhoneStateListener 内存泄露的问题
- Android XML文件链接错误
- CentOS下安装Git
- 周赛-Toy Cars
- js 中文乱码
- Android控件详解之惰性装载控件
- jQuery基础学习二 捕获、设置等复杂操作
- LintCode-旋转链表
- Python之Window环境搭建