Android应用OnTrimMemory()实现性能建议
来源:互联网 发布:java 读取txt 编辑:程序博客网 时间:2024/06/12 22:18
Android应用OnTrimMemory()实现性能建议
OnTrimMemory是Android 4.0之后加入的一个回调方法,作用是通知应用在不同的情况下进行自身的内存释放,以避免被系统直接杀掉,提高应用程序的用户体验(冷启动速度是热启动的2~3倍)。系统会根据当前不同等级的内存使用情况调用这个方法,并且传入当前内存等级,这个等级有很多种,我们可以依据情况实现不同的等级,这里不详细介绍,但是要说的是我们应用应该至少实现如下等级:
TRIM_MEMORY_BACKGROUND
内存已经很低了,系统准备开始根据LRU缓存来清理进程。这时候如果我们手动释放一些不重要的缓存资源,则当用户返回我们应用时会感觉到很顺畅,而不是重新启动应用。
可以实现OnTrimMemory方法的系统组件有Application、Activity、Fragement、
Service、ContentProvider;关于OnTrimMemory释放哪些内存其实在架构阶段就要考虑清楚哪些对象是要常驻内存的,哪些是伴随组件周期存在的,一般需要释放的都是缓存。
如下给出一个我们项目中常用的例子:
@Override
public void onTrimMemory(int level) {
if (level >= ComponentCallbacks2.TRIM_MEMORY_BACKGROUND) {
clearCache();
}
}
通常在我们代码实现了onTrimMemory后很难复显这种内存消耗场景,但是你又怕引入新Bug,想想办法测试。好在我们有一个快捷的方式来模拟触发该水平内存释放,如下命令:
adb shell dumpsys gfxinfo packagename -cmd trim value
packagename为包名或者进程id,value为ComponentCallbacks2.java里面定义的值,可以为80、60、40、20、5等,我们模拟触发其中的等级即可。
- Android应用OnTrimMemory()实现性能建议
- Android代码内存优化建议-OnTrimMemory优化
- Android代码内存优化建议-OnTrimMemory优化
- Android代码内存优化建议-OnTrimMemory优化
- Android代码内存优化建议-OnTrimMemory优化
- Android代码内存优化建议-OnTrimMemory优化
- Android代码内存优化建议-OnTrimMemory优化
- Android代码内存优化建议-OnTrimMemory优化
- android 应用内存优化之OnLowMemory&OnTrimMemory
- Android代码内存优化建议-OnTrimMemory优化01
- 性能优化-OnTrimMemory
- Android应用性能调优的层次和建议
- Android OnLowMemory和OnTrimMemory
- Android OnLowMemory和OnTrimMemory
- Android OnLowMemory和OnTrimMemory
- Android OnLowMemory和OnTrimMemory
- Android OnLowMemory和OnTrimMemory
- android onTrimMemory()和onLowMemory()
- for 镶嵌
- 单例模式的七种写法
- 【LeetCode】229.Majority Element II解题报告
- 安信可-A7模块——GPS显示坐标信息解读
- 用linux shell 脚本提取文件中图片,并重命名成0001\0002格式
- Android应用OnTrimMemory()实现性能建议
- Python的raw_input语句包含中文,在Windows环境CMD中显示乱码的解决方法
- MySQL 错误 “could not be resolved: ..” 和引发的思考
- 【6.1】c++ primer plus 课后编程答案
- Tensorflow 基础教程(1)
- Hadoop基本概念指南
- C# 中XML的序列化和反序列化
- J: 数字和
- 拓扑排序思维导图