专项:Android内存泄露实践分析
来源:互联网 发布:在淘宝买手机靠谱吗 编辑:程序博客网 时间:2024/06/06 01:59
影响
- 导致OOM
- 糟糕的用户体验
- 鸡肋的App存活率
成效
- 内存泄露是一个持续的过程,随着版本的迭代,效果越明显
- 由于某些原因无法改善的泄露(如框架限制),则尽量降低泄露的内存大小
- 内存泄露实施后的版本,一定要验证,不必马上推行到正式版,可作为beta版持续观察是否影响/引发其他功能/问题
内存泄露实施后,项目的收获:
- OOM减少30%以上
- 平均使用内存从80M稳定到40M左右
- 用户体验上升,流畅度提升
- 存活率上升,推送到达率提升
类型
- IO
- FileStream
- Cursor
- Bitmap
Context
- 单例
- Callback
Service
- BraodcastReceiver
- ContentObserver
Handler
Thread
技巧
慎用Context
- Context概念
- 四大组件Context和Application的context使用参见下表
善用Reference
- Java引用介绍
- Java四种引用由高到低依次为:强引用 > 软引用 > 弱引用 > 虚引用
- 表格说明
类型 垃圾回收时间 生存时间 强引用永远不会JVM停止运行时终止软引用内存不足时内存不足时终止弱引用垃圾回收时垃圾回收时终止虚引用垃圾回收时垃圾回收时终止复用ConvertView
- 复用详解
对象释放
- 遵循谁创建谁释放的原则
- 示例:显示调用clear列表、对象赋空值
转自:https://testerhome.com/topics/5822
0 0
- 专项:Android内存泄露实践分析
- (转)专项:Android 内存泄露实践分析
- Android 内存泄露实践分析
- Android 内存泄露实践分析
- Android 内存泄露实践分析
- Android 内存泄露实践分析
- Android 内存泄露实践分析
- Android 内存泄露实践分析
- Android 内存泄露实践分析
- Android 内存泄露实践分析
- WeTest--Android 内存泄露实践分析
- Android内存泄露分析
- android内存泄露分析
- Android内存泄露分析
- Android内存泄露分析
- Android 内存泄露分析
- Android 内存泄露 分析
- android内存泄露分析
- 多进程与多线程的选择
- caffe多标签装hdf5接口
- FMDB 使用方法
- 正则表达式基础语法
- Unity Http短连接
- 专项:Android内存泄露实践分析
- Android 插件化之类加载器 ClassLoader
- arm-linux内核编译过程小结
- Ngix的介绍
- 解析Json 和 XML 的学习
- 基于Redis Sentinel的Redis集群(主从&Sharding)高可用方案
- LinearLayout布局
- Linux一键安装web环境(阿里云服务器)
- Review-java基础-反射机制(Reflect)