Android 清单文件简介
日期: 来源:冰糖安卓网
除了声明应用的组件外,清单文件还有许多其他作用。如:
确定应用需要的任何用户权限,如互联网访问权限或对用户联系人的读取权限。声明应用使用或需要的硬件和软件功能,如相机、蓝牙服务或多点触摸屏幕。声明应用需要链接的 API 库(Android 框架 API 除外),如 Google 地图库。声明组件您必须使用以下元素声明所有应用组件:
Activity 的 <activity> 元素。服务的 <service> 元素。广播接收器的 <receiver> 元素。内容提供程序的 <provider> 元素。如果未在清单文件中声明源代码中包含的 Activity、服务和内容提供程序,则这些组件对系统不可见。因此也永远不会运行。不过,您可以 BroadcastReceiver 对象的形式,在清单中声明或在代码中动态创建广播接收器;以及通过调用 registerReceiver(),在系统中注册广播接收器。
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.myapp"> <application> <!-- 声明 Activity --> <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> <!-- 声明 Service --> <service android:name=".MyService" android:exported="false"> <!-- 在这里可以包含与该 Service 相关的其他配置 --> </service> <!-- 声明 BroadcastReceiver --> <receiver android:name=".MyReceiver" android:exported="false"> <!-- 在这里可以包含与该 BroadcastReceiver 相关的其他配置 --> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> </intent-filter> </receiver> <!-- 声明 ContentProvider --> <provider android:name=".MyContentProvider" android:authorities="com.example.myapp.provider" android:exported="false"> <!-- 在这里可以包含与该 ContentProvider 相关的其他配置 --> </provider> </application></manifest>