首页 > 代码库 > manifest文件详解

manifest文件详解

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.exe.phone"

<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"    package="com.exe.phone"    android:versionCode="1"    android:versionName="1.0"     <!-- 指定程序的安装位置 -->    android:installLocation="auto">    <!--    1.uses-sdk节点设置程序运行的最低版本(minSdkVersion)、最高版本(maxSdkVersion)、目标版本 (targetSdkVersion)    2.如果没有指定最低版本则默认为1此时如果程序调用高版本的API则会失败    3.目标版本的意义在意告诉系统不需要为此程序设置向前、向后的兼容更改    4.一般不会设置最高版本,如果设置了那么在高于此版本的android系统中改程序将不可见    -->    <uses-sdk        android:minSdkVersion="8"        android:targetSdkVersion="19" />    <!--     1.uses-configuration制定程序输入的不同组合,可以定义多个uses-configuration节点    2.需要注意的是如果设备不支持任意一种输入组合,程序将不会被安装    3.游戏中此项设置会用到,一般情况下不单独设置     -->    <uses-configuration         android:reqTouchScreen="finger"        />    <!--      1.uses-feature用于制定如果安装此程序则设备必须具备哪些硬件,负责不予安装    2.可以要求设备必须有音频、视频、蓝牙等硬件    -->    <uses-feature        android:name="android.hardware.nfc"         />    <!--     1.设置支持的屏幕分辨率    2.一般都需要针对不同的分辨率和密度使用资源文件优化应用程序,而不是强制指定程序只能适应某些程序     -->    <supports-screens             android:smallScreens="false"        />    <!--     1.uses-permission声明程序的权限,安装时会提示用户需要用到哪些权限,例如短信、电话、摄像头等    2.应该放在<manifest 的下一级,放到 <application>里面就会杯具了,编译可能会不报错(有的版本会报错吧),但是程序永远不会拿到这些权限    3.必须放在application节点前面     -->    <uses-permission android:name="android.permission.CALL_PHONE"/>    <!--     1.程序内部的自己的权限设置(必须有name属性)     -->    <permission android:name="name" android:protectionLevel="system"></permission>    <!--     1.测试类框架,需要为每一个类单独指定一个节点(好麻烦)     -->    <instrumentation android:label="My test" android:name=".MyTestClass" android:targetPackage="cn.example.package"></instrumentation>    <!--     1.一个manifest文件至少包含一个application节点    2.内部可以包含用到的service Content Provider、Broadcast Receiver     -->    <application        android:allowBackup="true"        android:icon="@drawable/ic_launcher"        android:label="@string/app_name"        android:theme="@style/AppTheme" >        <!--         1.必须使用name属性指定名称,程序内的继承自Activity的类都需要在此处声明定义为一个Activity节点        2.必须在application内部声明之后的activity才可以在程序中调用,否则会跑出运行时异常        3.每一个activity都允许指定启动该activity的intent(使用intent-filter节点标识)         -->        <activity            android:name="com.exe.phone.MainActivity"            android:label="@string/app_name" >            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>    </application></manifest>