Android
Файл манифеста
Поиск…
Вступление
Манифест является обязательным файлом с именем точно «AndroidManifest.xml» и находится в корневом каталоге приложения. Он определяет имя приложения, значок, имя пакета Java, версию, объявление о действиях, службах, разрешениях приложений и другую информацию.
Объявление компонентов
Основная задача манифеста - информировать систему о компонентах приложения. Например, файл манифеста может объявлять действие следующим образом:
<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
<application android:icon="@drawable/app_icon.png" ... >
<activity android:name="com.example.project.ExampleActivity"
android:label="@string/example_label" ... >
</activity>
...
</application>
</manifest>
В элементе <application>
атрибут android:icon
указывает на ресурсы для значка, который идентифицирует приложение.
В элементе атрибут android:name
указывает полное имя класса подкласса Activity, а атрибут android: label указывает строку, используемую в качестве видимой пользователем метки для этой активности.
Вы должны объявить все компоненты приложения таким образом:
- <activity>
элементов для деятельности
- <service>
элементы для служб
- элементы <receiver>
для широковещательных приемников
- <provider>
элементы для поставщиков контента
Службы, службы и поставщики контента, которые вы включаете в свой источник, но не объявляете в манифесте, не видны системе и, следовательно, никогда не могут работать. Однако широковещательные приемники могут быть либо объявлены в манифесте, либо созданы динамически в коде (как объекты BroadcastReceiver
) и зарегистрированы в системе, вызвав registerReceiver()
.
Подробнее о том, как структурировать файл манифеста для вашего приложения, см. В документации на AndroidManifest.xml.
Объявление разрешений в файле манифеста
Любые разрешения, требуемые вашим приложением для доступа к защищенной части API или для взаимодействия с другими приложениями, должны быть объявлены в вашем файле AndroidManifest.xml
. Это делается с помощью <uses-permission />
.
Синтаксис
<uses-permission android:name="string"
android:maxSdkVersion="integer"/>
android: name: Это имя требуемого разрешения
android: maxSdkVersion: самый высокий уровень API, на котором это разрешение должно быть предоставлено вашему приложению. Установка этого разрешения является необязательной и должна устанавливаться только в том случае, если требуется разрешение, требуемое вашему приложению на определенном уровне API.
Пример AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.samplepackage">
<!-- request internet permission -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- request camera permission -->
<uses-permission android:name="android.permission.CAMERA"/>
<!-- request permission to write to external storage -->
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="18" />
<application>....</application>
</manifest>
* Также см. Раздел « Разрешения» .