WEB开发网
开发学院手机开发Android 开发 Android SDK 1.5中文版 (Application基础) 阅读

Android SDK 1.5中文版 (Application基础)

 2010-03-11 16:00:00 来源:WEB开发网   
核心提示:1.1.2 关闭组件内容提供者仅在响应来自ContentResolver的请求时激活,而广播接收器仅在响应广播消息的时候激活,Android SDK 1.5中文版 (Application基础)(2),所以,没有必要显式的关闭这些组件,然而,广播接收器既可以在manifest文件中声明,而Activity则不同,它提供

1.1.2 关闭组件

内容提供者仅在响应来自ContentResolver的请求时激活。而广播接收器仅在响应广播消息的时候激活。所以,没有必要显式的关闭这些组件。

而Activity则不同,它提供了用户界面。并与用户进行会话。所以只要会话依然持续,哪怕会话过程暂时停顿,它都会一直保持激活状态。与此相似,服务也会在很长一段时间内保持运行。所以Android为关闭Activity和服务提供了一系列的方法。

* 可以通过finish()方法来关闭一个Activity。Activity可以通过调用另外一个Activity(它通过startActivityForResult()启动)的finishActivity()方法来关闭它。

* 服务可以通过调用它的stopSelf()方法来停止,或者调用Context.stopService()。

系统也会在组件不再被使用的时候或者Android需要为活动组件提供更多内存的时候关闭它。后面组件的生命周期一节,将对这种情况进行更详细的讨论。

1.1.3 manifest文件

Android启动一个应用程序组件之前,它必须知道哪个组件是存在的。所以,应用程序会在一个manifest文件中声明它的组件,这个文件被打包到Android包中。这个.apk文件还将包括应用程序的代码、文件以及其它资源。

这个manifest文件以XML作为结构格式,所有Android应用程序都叫AndroidManifest.xml。除了声明应用程序组件,它还提供很多额外功能,比如指明应用程序所需链接的库名称(除了默认的Android库之外)以及声明应用程序期望获得的各种权限。

但manifest文件的主要功能仍然是向Android声明应用程序的组件。例如,Activity可以这样声明:

《?xml version=”1.0” encoding=”utf-8”?》

《manifest . . . 》

《application . . . 》

《activity android:name=”com.example.project.FreneticActivity”

android:icon=”@drawable/small_pic.png”

android:label=”@string/freneticLabel”

. . . 》

《/activity》

. . .

《/application》

《/manifest》

《activity》元素的name属性指定了实现了这个Activity的 Activity子类。Icon和label属性指向了展示给用户的此Activity的图标和标签资源文件。

其它组件也以类似的方法声明——《service》元素用于声明服务,《receiver》元素用于声明广播接收器,而《provider》元素用于声明内容提供者。Manifest文件中未进行声明的Activity、服务以及内容提供者将不为系统所见,从而也就不会被运行。然而,广播接收器既可以在manifest文件中声明,也可以在代码中进行动态的创建,并以调用

Tags:Android SDK

编辑录入:coldstar [复制链接] [打 印]
赞助商链接