Android:Application类
2019-07-30 本文已影响0人
hanxianshe_9530
1. 定义
- 代表应用程序(即 Android App)的类,也属于Android中的一个系统组件
- 继承关系:继承自
ContextWarpper
类
image.png
2. 特点
2.1 实例创建方式:单例模式
- 每个Android App运行时,会首先自动创建Application 类并实例化 Application 对象,且只有一个。即 Application类 是单例模式(
singleton
)类 - 也可通过 继承 Application 类自定义Application 类和实例
2.2 实例形式:全局实例
即不同的组件(如Activity、Service)都可获得Application对象且都是同一个对象
2.3 生命周期:等于 Android App 的生命周期
Application
对象的生命周期是整个程序中最长的,即等于Android App的生命周期
3. 方法介绍

3.1 onCreate()
- 调用时刻: Application 实例创建时调用
Android系统的入口是Application类的 onCreate(),默认为空实现 - 作用
- 初始化 应用程序级别 的资源,如全局对象、环境配置变量、图片资源初始化、推送服务的注册等
- 数据共享、数据缓存.设置全局共享数据,如全局共享变量、方法等.
注:这些共享数据只在应用程序的生命周期内有效,当该应用程序被杀死,这些数据也会被清空,所以只能存储一些具备 临时性的共享数据
3.2 onConfigurationChanged()
- 作用:监听 应用程序 配置信息的改变,如屏幕旋转等
- 调用时刻:应用程序配置信息 改变时调用
- 该配置信息是指 :Manifest.xml文件下的 Activity标签属性android:configChanges的值,如下:
<activity android:name=".MainActivity">
android:configChanges="keyboardHidden|orientation|screenSize"
// 设置该配置属性会使 Activity在配置改变时不重启,只执行onConfigurationChanged()
// 上述语句表明,设置该配置属性可使 Activity 在屏幕旋转时不重启
</activity>