Application作为Android框架里面的一个组件,不需要自定义,程序启动时就会为我们创建一个对象用来存储系统的一些信息。系统只会为一个程序创建一个Application对象,所以它是singleton模式的,它的生命周期就是整个程序的生命周期。如果需要对其进行修改可以继承Application类,并在Androidmanifest.xml文件中对其进行重新声明。
<application
android:name="com.example.app.PushApplication"
..... >
</application>
启动Application时,系统会创建一个PID,即进程ID,所有的Activity都会在此进程上运行。那么我们在Application创建的时候初始化全局变量,同一个应用的所有Activity都可以取到这些全局变量的值,换句话说,我们在某一个Activity中改变了这些全局变量的值,那么在同一个应用的其他Activity中值就会改变。
因为它是全局的单例的,所以在不同的Activity,Service中获得的对象都是同一个对象。所以可以通过Application来进行一些,如:数据传递、数据共享和数据缓存等操作。