内容简介:
Android AndroidManifest.xml, 即Android清单文件。每个Android应用的根目录中都必须包含一个 AndroidManifest.xml 文件。 清单文件为 Android 系统提供有关您的应用的基本信息,系统必须获得这些信息才能运行任意应用代码。
Android清单文件是一个xml文件,描述了应用程序package中暴露的组件(activity,service...), 各自的实现类, 各种能被处理的数据以及启动的位置,以及各种权限的声明。
此外,清单文件还可执行以下操作:
(1),为应用的 Java 软件包命名。即:构成应用的 Activity、服务、广播接收器和内容提供程序;
(2),为实现每个组件的类命名并发布其功能(例如,它们可以处理的 Intent 消息);
(3),声明应用必须具备哪些权限才能访问API中受保护的部分。
AndroidManifest.xml文件的位置:
与Eclipse不同,在Android Studio中,AndroidManifest.xml文件的位置与res属于同一级目录,具体位置如下:
aaaaa:main user1$ pwd
/Users/user1/work/test_src/test_demo/app/src/main
aaaaa:main user1$ ls
AndroidManifest.xml java res
代码举例:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.myapp">
<!-- call phone -->
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission
android:name="android.permission.MODIFY_PHONE_STATE"
tools:ignore="ProtectedPermissions" />
<uses-permission
android:name="android.permission.PACKAGE_USAGE_STATS"
tools:ignore="ProtectedPermissions" />
<!-- wifi -->
<!-- location -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ANSWER_PHONE_CALLS" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.VIBRATE" />
<!-- sd卡创建文件 需要的权限 写入/读取数据 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<application
android:name=".App"
android:allowBackup="false"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:usesCleartextTraffic="true"
android:theme="@style/AppTheme">
<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>