android 内存优化(一) 防止内存泄漏注意事项

1)context除开dialog必须使用this外,其余的需要用到context的地方都应该用application的context即getapplicationcontext,防止静态内部类持有activity引用,单例context
2)handler使用完之后需要在界面销毁时remove掉,实际网上说的弱引用acitivity处理handler泄漏的没太大实际意义,代码一大堆,又不实用
3)广播类的注册和取消注册应该成对出现,即oncreate/onresume时注册,ondestory/onstop时取消注册,于此相关的还有contentobserver也是类似
4)数据库增删减查时用的cursor都需要在用完后及时的close,文件io流读写操作使用完后要及时关闭
5)线程,线程池,异步类处理耗时操作时,需要在界面销毁时应该有停止线程或者取消异步任务的逻辑,尽量使用线程池,可以循环使用资源
6)占资源较多的list或者数组应该在使用完后及时的清空
7)第三方框架注意及时释放资源,如okhttp,eventbus等,移除多余的库
8)webview在界面销毁时要及时释放资源
9)音视频播放类的要在界面销毁时及时的release释放资源
10)用Protocol Buffers代替序列化数据?
11)listview/gridview重用view机制
12)循环执行动画类的界面销毁时及时停止动画释放资源
13)当界面不可见时释放内存 onStop(),当内存紧张时释放内存 onTrimMemory()
14)bitmap压缩 节省内存 及时释放资源 

https://blog.csdn.net/u010672559/article/details/103178632 android 内存优化(一) 防止内存泄漏注意事项

https://blog.csdn.net/u010672559/article/details/103178663 android 内存优化(二) 性能优化

https://blog.csdn.net/u010672559/article/details/81098534 android 内存优化(三) 内存优化工具-MAT的使用及实例分析

https://blog.csdn.net/u010672559/article/details/81223122 android 内存优化(四) 性能优化-Systrace分析UI性能-含demo

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值