一个非常简单的 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提供