Android 清单文件
每个Android项目都有一个清单文件。
例子
以下代码含有AndroidManifest.xml文件的示例:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="cn.w3cschool.app" >
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="cn.w3cschool.app.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>注意
AndroidManifest.xml 文件包含有关应用程序的详细信息:它将应用程序的包名称定义为 com.java2s.Hello World 。
应用程序的版本代码是通过 android:versionCode 属性的1设置。此值标识应用程序的版本号。它可以用于以编程方式确定应用程序是否需要升级。
应用程序的版本名称通过 android:versionName 属性设置为1.0。此字符串值主要用于向用户显示。你应该使用<major>。<minor>。<point> 这个值。
<uses-sdk>元素android:minSdkVersion属性指定应用程序将在其上运行的操作系统的最低版本。
应用程序使用位于drawable文件夹中的名为 ic_launcher.png 的图像。
此应用程序的名称是在strings.xml文件中定义的名为 app_name 的字符串。
在由 HelloWorldActivity.java 文件表示的应用程序中有一个活动。为此活动显示的标签与应用程序名称相同。
在此活动的定义中,有一个名为<intent-filter>的元素:
- 意图过滤器的action名为
android.intent.action.MAIN。 - 它表示此活动充当应用程序的入口点。
- 意图过滤器的类别名为
android.intent.category.LAUNCHER。它表示该应用程序可以从设备的启动器图标启动。
你在应用程序中的每个活动必须在AndroidManifest.xml 文件中声明。
设置目标SDK版本
我们可以在manifest xml文件中设置目标SDK版本。
<manifest ...
<uses-sdk
android:minSdkVersion="4"
android:targetSdkVersion="15" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity android:name=".MainActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
上面的代码使用<uses-sdk>标签设置目标SDK版本如下。
<uses-sdk
android:minSdkVersion="4"
android:targetSdkVersion="15" />
设置min Sdk版本
在清单文件中我们可以设置 minSdkVersion 。
<?xml version="1.0" encoding="utf-8"?>
<manifest ...
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="4" />
<application
android:icon="@drawable/icon"
android:label="@string/app_name" >
<activity
android:name=".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>
上面的代码使用< uses-sdk> 标签设置minSdkVersion ,如下:
<uses-sdk android:minSdkVersion="4" />
关闭软输入面板
获取EditText自动获得焦点,但不希望软输入面板(键盘)自动出现在真实设备上。
要防止键盘出现,请将以下属性添加到AndroidManifest.xml文件中的< activity> 元素:
<?xml version="1.0" encoding="utf-8"?>
<manifest ...
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="4" />
<application
android:icon="@drawable/icon"
android:label="@string/app_name" >
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:windowSoftInputMode="stateHidden"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
上面的代码通过使用<activity> 标签中的属性关闭软输入面板,如下所示。
<activity
...
android:windowSoftInputMode="stateHidden"
>