第三章:Creating Applications and activities-(七)介绍Android应用的class

本文介绍了Android开发中Application类的使用方法,包括如何继承Application类来维护应用状态、传递对象及管理资源;同时,还讲解了如何覆盖Application类的生命周期方法以实现特定的应用行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.1 介绍Android应用的class

继承Application类并编写自己的实现,你需要做三件事

1、维护application状态

2、在application组件间传递对象

3、通过几个application组件管理和维护资源

当你Application的实现在manifest中注册了,当你application进程创建的时候,他就会被初始化。你的Application实现是一个单例模式,并且你应该提供访问他和成员变量的方法。

1.1.1 继承和使用Application class

Listing3-7展示了一个继承了Application的单例的实现骨架:

图 Listing 3-7


一旦被创建了,你必须在manifest中的<application>节点注册你的新Application 类,如下代码所示:

<application android:icon="@drawable/icon"

   android:name="MyApplication">

   [... Manifest nodes ...]

</application>

你的Application实现将会在application开始的时候被初始化。在application组件中可以创建访问新的状态变量和全局资源。

MyObject value = MyApplication.getInstance().getGlobalStateValue();

MyApplication.getInstance().setGlobalStateValue(value);

这是一个在松耦合组件间传递对象,特别有效的方法,或者用来维护application的状态或者用来共享资源

1.1.2 覆盖Application生命周期事件

Application类也为application创建、终止、低内存、配置改变等状态提供事件处理方法。

通过覆盖这些方法,你可以为下边的情况实现自己特定的应用行为。

· onCreate:当应用创建时候被调用。通过覆盖这个方法可以去初始化应用的单例并且可以初始化应用的状态,共享资源。

· onTerminate:当应用对象被终止的时候调用。注意这个方法不保证会被调用。当应用被系统的内核程序因为释放资源给终止了,那么在应用对象终止的时候就不会调用这个方法。

· onLowMemory:为系统应用程序表现良好提供了更多内存,当系统内存较低的时候使用。这个一般会在后台应用已经被终止了,但是当前的前端应用还是在较低内存下运行时候被调用。可以覆盖这个方法去清除缓存或者释放不需要的资源。

· onConfigurationChanged:不像Activities,你的应用对象在配置改变的时候不会被killed或者重启。覆盖这个处理方法可以去处理应用级别的配置改变。

如图Listing 3-8所示,你必须在覆盖父类的方法中调用父类的事件处理。

图 Listing 3-8



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值