Android源码——ComponentCallbacks源码解析

ComponentCallbacks源码分析

ComponentCallbacks源码

  • 当组件还在运行时变更configuration,onConfigurationChanged()会被调用
  • 当系统内存不足时会调用onLowMemory(),可重写释放缓存或不必要的资源
public interface ComponentCallbacks {
	void onConfigurationChanged(Configuration newConfig);
	void onLowMemory();
}

ComponentCallbacks2源码

ComponentCallbacks2是ComponentCallbacks的扩展接口,以下常量用于onTrimMemory()缩减内存,分别为

  • 应用处于LRU末尾,内存不足时会被杀掉
  • 应用处于LRU中间,清理内存获得更好的性能
  • 应用刚进入LRU,可以考虑清资源
  • 应用UI已被隐藏,分配给UI的内存应该被回收
  • 内存严重不足,需释放尽可能多的非必要资源,接下来将调用onLowMemory()
  • 内存不足,应该需释放一些非必要资源
  • 内存不足,可能需释放一些非必要资源
public interface ComponentCallbacks2 extends ComponentCallbacks {
	static final int TRIM_MEMORY_COMPLETE = 80;
	static final int TRIM_MEMORY_MODERATE = 60;
	static final int TRIM_MEMORY_BACKGROUND = 40;
	static final int TRIM_MEMORY_UI_HIDDEN = 20;
	static final int TRIM_MEMORY_RUNNING_CRITICAL = 15;
	static final int TRIM_MEMORY_RUNNING_LOW = 10;
	static final int TRIM_MEMORY_RUNNING_MODERATE = 5;
	void onTrimMemory(int level);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值