AndroidManifest.xml文件详解(一)

长平狐 发布于 2012/10/16 10:21
阅读 94
收藏 0

每个应用程序在它的根目录中都必须要有一个AndroidManifest.xml文件。这个清单把应用程序的基本信息提交给Android系统,在应用程序的代码能够运行之前,这个信息系统必须建立。以下是清单文件要做的一些事情:

1. 用Java包给应用程序命名。这个包名是应用程序的唯一标识;

2. 描述应用程序的组件---组成应用程序的ActivityServiceBroadcast Receiver以及Content Provider。它要用每个组件的实现类来命名,并向外发布对应组件功能(例如,组件所能处理的Intent消息)。这些声明会让Android系统了解应用程序中组件,以及这些组件被加载的条件。

3. 判断哪些进程是主应用程序组件。

4. 声明应用程序所必须的权限,以便能够访问被保护的API,以及能够跟其他应用程序进行交互。

5. 为了跟应用程序组件进行交互,还声明了其他要求有的权限。

6. 列出了能够提供应用程序运行时的分析和其他信息的Instrumentation类。只有在开发和测试应用程序时才在清单文件中声明这些类,在应用程序被发布之前,要删除这些类。

7. 声明应用程序所要求的最小的Android API级别。

8. 列出应用程序必须链接的外部库。

Manifest文件的结构

下图中包含了清单文件的一般性结构,并且包含所有能包含的元素。每个元素所带有的全部元素会在它们各自的文档中介绍。

<?xml version="1.0" encoding="utf-8"?>
<manifest>
   
<uses-permission/>
   
<permission/>
   
<permission-tree/>
   
<permission-group/>
   
<instrumentation/>
   
<uses-sdk/>
   
<uses-configuration/>  
   
<uses-feature/>  
   
<supports-screens/>  
   
<compatible-screens/>  
   
<supports-gl-texture/>  
   
<application>
       
<activity>
           
<intent-filter>
               
<action/>
               
<category/>
               
<data/>
           
</intent-filter>
           
<meta-data/>
       
</activity>
       
<activity-alias>
           
<intent-filter> . . . </intent-filter>
           
<meta-data/>
       
</activity-alias>
       
<service>
           
<intent-filter> . . . </intent-filter>
           
<meta-data/>
       
</service>
       
<receiver>
           
<intent-filter> . . . </intent-filter>
           
<meta-data/>
       
</receiver>
       
<provider>
           
<grant-uri-permission/>
           
<meta-data/>
       
</provider>
       
<uses-library/>
   
</application>
</manifest>

以下按字母顺序列出了清单文件中的所有元素,这些元素时Android系统法定元素,不能添加自定义的元素或属性。

<action>
<activity>

<activity-alias>

<application>

<category>

<data>

<grant-uri-permission>

<instrumentation>

<intent-filter>

<manifest>

<meta-data>

<permission>

<permission-group>

<permission-tree>

<provider>

<receiver>

<service>

<supports-screens>

<uses-configuration>

<uses-feature>

<uses-library>

<uses-permission>

<uses-sdk>

 

 


原文链接:http://blog.csdn.net/fireofstar/article/details/7540991
加载中
返回顶部
顶部