• 沒有找到結果。

一个非常简单的 Android Manifest.xml 文件像这样的:

� 几乎每一个 Android Manifest.xml( 也包含许多 Android XML 文件)在它第一个 元素中都会包括名字空间声明

(xmls:a ndroid=http://schemas.a ndroid.com/apk/res/a ndroid)。这样在该文件中做了一 种标准的 Android 属性值。这个属性将会用来为该文件中元素支持多数数据。

� 几乎每一个 Manifest 都包括了一个单独的<applica tion> 标签,该标签会包含 许多描述在本程序中可用的 Application(应用程序)、 IntentReceiver ,等等的标 签。

� 如果你想要让一个 Activity 通过用户可直接运行,你将需要让他支持 MAIN 动作和 LAUNCHER category(种类),它的结果如下所示:

图 5555 可直接运行的 ActivityActivityActivityActivity

<?xml version="1.0" encoding="utf-8"?>

<manifest

xmlns:android="http:/ /schemas.and roid.co m/apk/ res/and roid"

package="org.anddev.and roid.hello_and roid">

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

<activity android:name=".Hello_And roid"

android:label="@string /app_name">

<intent-filter>

<action

android:name="and roid.intent.action.M AIN" />

<category

android:name="and roid.intent.categor y.LAUNCHER" />

</intent-filter>

</activity>

</application>

</manifest>

anddev.org提供

25 25 25 25

以下是一个 Android Manifest 文件结构的详细列表,描述了所有可用的<tag>标签 , 每一个附有示例:

<manifest>

<manifest> <manifest> <manifest>

这是每一个 Android Manifest.xml 的根节点。它包含了指向任何包里面 Activity 外 层的套件属性。其他的 Activity-路径将会 c 对的基于它的值。

<uses-permission>

<uses-permission> <uses-permission> <uses-permission>

描述一个为了让你应用程序操作正确(换句话说,当你想要发短信或是使用电话 练习薄时)它必须被授予的安全许可。在安装你的应用程序期间,这个许可通过 用户授予。数量级:0

<permission>

<permission> <permission> <permission>

声明一个安全许可,可以用来限制哪些应用程序可以访问你套件中的组件和特性 (或其他的)。数量级:0

<instrumentation>

<instrumentation> <instrumentation> <instrumentation>

声明一个编排组件的代码,它可用来测试组件的功能或是其他套件。参看更多 instrumentation 的详细内容。数量级:0

<application>

<application> <application> <application>

根元素,包含了套件中包含的应用程序级组件的声明。该元素也可以为应用程序 包括全局且/或默认属性,例如一个 Label 文本标签,icon,theme 主题,必须的 许可,等。数量级:0 或 1

<manifest

xmlns:android="http:/ /schemas.and roid.co m/apk/ res/and roid"

package="com.demo.and roid.b mi2.toast"

<uses-permission android:name=" android.per mission.RECEIVE_SMS"/>

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

+ +

+

anddev.org提供

26 26 26 26

你可以把 0 替换成下面的每个子元素:

<activity>

<activity> <activity> <activity>

一个 Activity 是应用程序和用户交互的主要事物。当运行一个应用程序时用户看 到的首显屏幕是一个 Activity,并且多数用户使用的其他屏幕将会作为独立的 Activity 通过添加 Activity 标签声明被实现。

注意:不论它被展露给世界或只是有意在它自己套件中使用,每 一个 Activity 在 Manifest 中必须含有一个<activity>标签。如果一个 Activity 在 Manifest 中没有符合的 Activity 标签,你将不能运行它。

随意地,为了支持新的运行时更新,你可以包含 1 <intent-filter> 元素来声明该 Activity 支持的动作。

<intent-filter>

<intent-filter> <intent-filter> <intent-filter>

声明了一个组件支持什么类型的 Intent。除了多种能在这个元素下被说明的值以 外,这里给出的属性也可以为已经描述的动作 action 支持一个单独的 label、ico n 和其他信息。

<action>

<action> <action> <action>

一个该组件支持的动作类型。例如:

<activity android:name=".Welcome"

android:label="@string /app_name">

<intent-filter>

<action android:name="and roid.intent.action.M AIN" />

+

+

anddev.org提供

27 27 27 27

<category>

<category> <category> <category>

一个该组件支持的 category 类型。例如:

<data>

<data> <data> <data>

一个该组件支持的 MIME 类型,URI 体系、URI 权威或路径。

你也可以用你的 Activity 来联合 1 个 meta-data 片段:

<meta-data>

<meta-data> <meta-data> <meta-data>

添加一个 meta-data 片段到 Activity 中,客户可以通过 ComponentInfo.meta Data 来检索。

<receiver>

<receiver> <receiver> <receiver>

一个 IntentReceiver 允许一个应用程序被告知交换数据和发生的动作,即使它现 在没有运行。因为有了 Activity 标签,你可以随意地包括 1 个<intent-filter> 元 素,这个<intent-filter> 是该 Receiver 支持的或是<meta-data>值,就像<activity>

一样。

<service>

<service> <service> <service>

一个 Service 是一个任意时间量内可以在后台运行的组件。由于有了 Activity 标 签,你可以随意包含一个或多个<intent-filter> 元 素 ,这个<intent-filter> 是该 Service 支持的或是<meta-data>值;更多信息参看 Activity 的<intent-filter>和<meta-data>

描述。

<provider>

<provider> <provider> <provider>

一个 ContentProvider 是一个管理持续数据并发布它来让其他应用程序访问。你一 可以随意附加一个或多个<meta-data>值,正如 Activity 的<meta-data>描述一样描 写。

当然,所有<tag>标签不得不使用</tag>或是直接地</>来结束。

<category android:name="and roid.intent.categor y.LAUNCHER" />

<receiver android:name=".SMSReceiver">

+

+

anddev.org提供

28 28 28 28

相關文件