赞
踩
继承关系:继承自 ContextWarpper 类,继承关系如下图所示:
即不同的组件(如Activity、Service)都可获得Application对象且都是同一个对象
Application 对象的生命周期是整个程序中最长的,即等于Android App的生命周期
那么,该 Application 类有什么作用呢?下面,我将介绍Application 类的方法使用
调用时刻:Application实例创建时使用( Android系统的入口是Application类的 onCreate(),默认为空实现)
作用:① 初始化 应用程序级别 的资源,如全局对象、环境配置变量、图片资源初始化、推送服务的注册等( 注:请不要执行耗时操作,否则会拖慢应用程序启动速度 )。② 数据共享、数据缓存, 设置全局共享数据,如全局共享变量、方法等( 注:这些共享数据只在应用程序的生命周期内有效,当该应用程序被杀死,这些数据也会被清空,所以只能存储一些具备 临时性的共享数据)
示例代码如下:
作用:通知 应用程序 当前内存使用情况(以内存级别进行识别, Android 4.0 后提供的一个API )
应用场景:根据当前内存使用情况进行自身的内存资源的不同程度释放,以避免被系统直接杀掉 & 优化应用程序的性能体验
具体使用:
可回调对象 & 对应方法
特别注意:onTrimMemory()中的TRIM_MEMORY_UI_HIDDEN与onStop()的关系
作用:监听 Android系统整体内存较低时刻
调用时刻:Android系统整体内存较低时:代码如下:
应用场景:Android 4.0前 检测内存使用情况,从而避免被系统直接杀掉 & 优化应用程序的性能体验( 类似于 OnTrimMemory())
特别注意:OnTrimMemory() & OnLowMemory() 关系
示例代码试下所示:
该配置信息是指 :Manifest.xml文件下的 Activity标签属性android:configChanges的值,如下:
示例代码如下:
作用:注册和注销 ComponentCallbacks2回调接口
本质上是复写 ComponentCallbacks2回调接口里的方法从而实现更多的操作,实例代码如下:
就是重写内存处理和配置信息更改后调用的方法
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。