Синтаксис

<application android:allowTaskReparenting=["true" | "false"] 
             android:allowBackup=["true" | "false"] 
             android:backupAgent="рядок символів" 
             android:banner="ресурс-малюнок" 
             android:debuggable=["true" | "false"] 
             android:description="рядковий ресурс" 
             android:enabled=["true" | "false"] 
             android:hasCode=["true" | "false"] 
             android:hardwareAccelerated=["true" | "false"] 
             android:icon="ресурс-малюнок" 
             android:isGame=["true" | "false"] 
             android:killAfterRestore=["true" | "false"] 
             android:largeHeap=["true" | "false"] 
             android:label="рядковий ресурс" 
             android:logo="ресурс-малюнок" 
             android:manageSpaceActivity="рядок" 
             android:name="рядок" 
             android:permission="рядок" 
             android:persistent=["true" | "false"] 
             android:process="рядок" 
             android:restoreAnyVersion=["true" | "false"] 
             android:requiredAccountType="рядок" 
             android:restrictedAccountType="рядок" 
             android:supportsRtl=["true" | "false"] 
             android:taskAffinity="рядок" 
             android:testOnly=["true" | "false"] 
             android:theme="ресурс теми" 
             android:uiOptions=["none" | "splitActionBarWhenNarrow"] 
             android:usesCleartextTraffic=["true" | "false"] 
             android:vmSafeMode=["true" | "false"] > 

</application>

Міститься у

<manifest>

Може містити

<activity> <activity-alias> <meta-data> <service> <receiver> <provider> <uses-library>

Опис

Оголошення програми. Цей елемент містить дочірні, які оголошують усі компоненти програми і має атрибути, які можуть вплинути на усіх потомків. Деякі з цих атрибутів (на подобі icon, label, permission, pricess, taskAffinity i allowTaskReparenting) встановлюють значення за замовчуванням для відповідних елементів компоненту. Інші (наприклад, debuggable, enabled, description i allowClearUserData) встановлюють глобальні значення для програми і не можуть бути перевизначеними іншими компонентами.

Атрибути

android:allowTaskReparenting Визначає, чи дія (activity) може переміщатись від процесу, який її створив до іншого, якщо ні — дане значення повинне бути встановлене у false. Значення за умовчанням — false. Елемент може мати власний атрибут allowTaskReparenting, який може презаписати дане значення. android:allowBackup Чи дозволити виконувати резервне копіювання даних і відновлення інфраструктури для цієї програми. Якщо даний атрибут містить значення false, резервне копіювання або відновлення програм не буде виконуватись над нею, навіть за допомогою системної програми резервного копіювання, яка зберігає усі дані у файлі adb. Значення за умовчанням — "true". android:backupAgent Ім'я класу, який реалізовує агент резервного збереження даних програми, потомок класу BackupAgent. Значення атрибуту повинне мати повне ім'я класу (наприклад “com.examole.project.MyBackupAgent”). Однак, в якості скорочення, може використовуватись символ крапки на початку назви класу, що в свою чергу призведе до автоматичного доповнення попередніх частин імені даними, які містяться у елементі <manifest>. Для даного атрибуту не існує значення за умовчанням — воно повинне бути визначеним. android:banner Візуальний ресурс, який містить розширений графічний банер для асоціацій з програмою. Використовуйте теґ <application> для стандартного банера усієї програми, або використайте цей атрибут у елементі <activity> для застосовування унікального банера для кожної дії. Система використовує банер для представлення програми у домашньому екрані Android TV. Оскільки банер відображається тільки на домашньому екрані, він повинен бути вказаним для програм з діями, які обробляють наміри CATEGORY_LEANBACK_LAUNCHER. Даний атрибут повинен містити посилання на візуальний ресурс, який містить зображення (наприклад “@drawable/banner”). Не існує стандартного банера. android:debuggable Даний атрибут визначає чи програма може бути відлагоджуваною, навіть під час виконання на пристрої в режимі користувача - “true”, якщо так, і “false”, якщо ні. Стандартне значення - “false”. android:description Читабельний текст для користувача, набагато довший і більш детальний ніж мітка програми. Дане значення повинне бути встановлене у якості посилання на текстовий ресурс програми. На відміну від мітки, дане значення не може бути рядком симолів. Немає значення за умовчанням. android:enabled Даний атрибут визначає, чи система Android може запускати компоненти програми - “true”, якщо може, і “false”, якщо ні. Якщо значення встановлено у true, кожне значення даного атрибуту визначає доступність даного компоненту. Якщо значення встановлено у false, воно перезаписує даний атрибут кожного компоненту; усі компоненти являються недоступними. Значення за умовчанням — “true”. android:hasCode Визначає, чи дана програма містить будь-який код. Значення “true” вказує на вміст коду. Якщо значення атрибуту встановлено у “false”, система не намагається завантажити будь-який код програми під час запуску компонентів. Значення за умовчанням — “true”. Програма не буде містити будь-який власний код, якщо вона використовує тільки вбудовані компоненти, на подобі дії, яка використовує клас AliasActivity (рідкісний випадок). android:hardwareAccelerated Даний атрибут вказує чи повинно бути увімкненим апаратне прискорення компонування зображення програми, для усіх її дій і представлень. Значення “true” для увімкненого апаратного прискорення відображення. Значення за умовчанням - “true”, якщо ви встановете значення атрибуту minSdkVersion або targetSdkVersion у 14 або вище; у іншому випадку його значення “false”. Розпочинаючи від Android версії 3.0 (API версії 11), апаратно-прискорене компонування зображення OpenGL стало доступним програмам, для підвищення швидкодії для багатьох графічних операцій у 2D. Коли апаратне прискорення увімкнене, більшість операцій Canvas, Paint, Xfermode, ColorFilter, Shader і Camera являються прискореними. Це призводить до більш плавних анімацій, прокручування і покращеної чутливості, навіть для програм, які явно не викликають функцій з бібліотек OpenGL. Зверніть увагу, що не усі операції над 2D являються апаратно прискореними. Якщо ви увімкнете прискорення, проведіть тести програми, щоб впевнитись у її відображенні без помилок. android:icon Іконка для усієї програми і стандартна іконка для усіх її компонентів. Значення атрибуту повинно бути встановленим у посилання на графічний ресурс програми, який містить зображення (наприклад “@drawable/icon”). Не існує стандартної іконки. android:isGame Вказує на те чи програма являється грою. Система може групувати разом програми, які класифіковані в категорію ігри, або відображати їх окремо від інших програм. android:killAfterRestore Даний показник визначає чи буде програма зупинена після відновлення її налаштувань під час повного системного відновлення. Відновлення одиноких пакетів ніколи не спричинить зупинення програми. Загальносистемне відновлення відбуваються зазвичай одинарно, коли телефон вперше увімкнений. Програми зазвичай не потребуватимуть використання даного атрибуту. За умовчанням даний атрибут увімкнений, що означає зупинку програми після обробки її відновлених даних. android:largeHeap Вказує на створення процесу з великим виділенням пам'яті купи. Це відноситься до усіх процесів створених для програми, але велика кількість пам'яті виділяється тільки для першого завантаженого процесу, якщо у вас їх декілька з спільним ідентифікатором користувача. Більшість програм не повинні використовувати цей атрибут. Замість цього необхідно сфокусуватись на економії пам'яті програмою. Вмикаючи дану функцію також не гарантує фіксованого збільшення пам'яті тому, що деякі пристрої мають обмежену апаратну конфігурацію. android:label Читаєма для користувача мітка для програми в цілому, і стандартна мітка для усіх компонентів програми. Багато елементів маніфесту можуть визначати даний атрибут. Матка повинна бути встановленою в якості посилання на рядковий ресурс, отож вона може мати відповідну до конфігурації системи мову. Однак, ви також можете встановити значення в якості звичайного тексту. android:logo Стандартний логотип програми в цілому, і логотип за умовчанням для дій. Даний атрибут повинен бути встановленим в якості посилання на графічний ресурс, який містить зображення. Немає стандартного логотипу. android:manageSpaceActivity Повне ім'я дочірнього класу Activity, який система використовуватиме для управління пам'яттю, яку зайняла програма. Дія також повинна бути оголошена за допомогою елементу <activity>. android:name Повне ім'я потомка класу Application, який реалізований для програми. Коли починається процес програми, створюється примірник даного класу перед будь-яким компонентом програми. Потомок являється не обов'язковим; більшість програми такого не потребують. За відсутності реалізованого потомка класу програми, система Android використовує примірник самого класу Application. android:permission Ім'я дозволу, який клієнти повинні мати для взаємодії з програмою. Цей атрибут являється зручним шляхом для встановлення доступів, які застосовуються до усіх компонентів програми. Вона може бути перезаписаною за допомогою встановлення атрибуту permission у індивідуальних компонентах. android:persistent Даний атрибут вказує, чи дана програма повинна виконуватись увесь час, якщо значення встановлено в “true”. Значення за умовчанням — “false”. Програми, за нормальних умов, не повинні встановлювати даний прапорець; постійний режим програми призначений, в основному, для системних процесів. android:process Ім'я процесу у якому повинні виконуватись усі компоненти програми. Кожен компонент може перезаписувати дане значення встановлюючи власне значення даного атрибуту. За умовчанням, Android створює процес для програми, коли один з її компонентів потребує виконання. Усі компоненти виконуються у цьому процесі. Стандартне ім'я процесу співпадає з ім'ям пакету встановленому у елементі <manifest>. В результаті встановлення даного атрибуту для імені процесу, яке розділяється між іншими програмами, ви можете отримати виконання компонентів обох програм у одному процесі — але якщо дві програми розділяють один ідентифікатор користувача і підписані одинаковим сертифікатом. Якщо ім'я, присвоєне для цього атрибуту починається з символу двокрапки (“:”), новий процес, приватний для програми створюється за необхідності. Якщо ім'я процесу починається з літери нижнього регістру, створюється глобальний процес з даним ім'ям. Глобальний процес може бути розділеним з іншими програмами, зменшуючи використання пам'яті. android:restoreAnyVersion Вказує, що програма підготовлена для спроби відновлення будь-яких зарезервованих даних, навіть якщо резервна копія була зроблена новішою версією програми, ніж поточна встановлена. Встановлення даного атрибуту у значення “true” буде дозволяти менеджеру резервного копіювання (Backup Manager) виконувати спроби відновлення програми, навіть якщо різниця версій передбачає несумісність даних. Використовуйте обережно! Значення за умовчанням для даного параметру — false. android:requiredAccountType Вказує необхідний тип облікового запису для функціонування програми. Якщо ваша програма вимагає обліковий запис (клас Account), значення цього атрибуту повинне відповідати до типу автентифікації користувача, яка використовується вашою програмою, на подобі “com.google”. Значення за умовчанням являється null і означає, що програма може працювати і без будь-яких акаунтів. Через те, що обмежені профілі не можуть додавати облікові записи, встановлення даного атрибуту спричиняє недоступність вашої програми з обмеженого профілю системи. Хіба-що ви також оголосите android:restrictedAccountType з таким ж іменем. Якщо дані облікового запису можуть розкривати особисту інформацію, важливо, щоб ви оголосили цей атрибут і залишили значення android:restrictedAccountType у null, отож обмежені профілі не можуть використати вашу програму для доступу до особистої інформації, яка належить користувачу власнику. Даний атрибут введено у API рівня 18. android:restrictedAccountType Вказує тип облікового запису, який необхідний для даної програми і вказує чи обмеженим профілям дозволено працювати з даними обліковими записами, які належать до користувача власника. Якщо ваша програма вимагає обліковий запис (клас Account) і обмеженим профілям дозволено отримувати доступу до облікового запису головного користувача, значення цього атрибуту повинно відповідати до типу автентифікації облікового запису, яка використовується вашою програмою. Значення за умовчанням являється null і це означає, що програма може працювати без облікових записів. Даний атрибут впроваджено у API рівня 18. android:supportsRtl Оголошує чи ваша програма здатна відображати правосторонні макети (right-to-left — RTL). Якщо даний параметр встановлено у “true” і targetSdkVersion встановлено у 17 або вище, будуть активованими і використаними системою деякі RTL API, зоб ваша програма мала можливість відображати правосторонні локалі. Якщо даний атрибут встановлено у “false” або якщо targetSdkVersion встановлена у значення 16 або нижче, RTL API будуть ігноруватись або не викликати ніяких змін, і ваша програма буде поводитись однакову незважаючи на напрямок локалі. Значення за умовчанням - “false”. Даний атрибут був впроваджений у API рівня 17. android:taskAffinity Визначає ім'я групи, яке використовується для всіх дій програми за умовчанням. За виключенням тих, які визначили іншу групу. За умовчанням усі дії розділяють одну стандартну групу програми. Стандартна група має ім'я атрибуту пакета визначеного у елементі <manifest>. android:testOnly Індикує чи поточна програма застосовується для тільки тестування. Наприклад, вона може неправильно використовувати функції або отримувати данні зовні, що може спричинити проблеми з безпекою, але являтись корисною для тестування. Даний тип програми може бути встановлений тільки через adb. android:theme Посилання на ресурс стилів, які визначають тему за умовчанняс для усіх дія у програмі. Усі дії можуть індивідуально перевизначати дане значення. android:uiOptions Унікальні прапорці для інтерфейсів дій. Повинне бути одним з наступних:
  • none. Немає унікальних параметрів. Це є стандартне значення.
  • splitActionBarWhenNarrow. Додає панель знизу екрану для відображення елементів.
android:usesCleartextTraffic Показує чи програма використовує не шифрований текстовий трафік, на подобі HTTP. Значення за умовчанням - “true”. Коли атрибут встановлений у “false”, компоненти платформи (наприклад, стеки HTTP і FTP, DownloadManager i MediaPlayer) відмовляться задовільняти запити програми на використання не шифрованого трафіку. Рекомендується, щоб сторонні бібліотеки використовували дане налаштування. Ключова причина для запобігання використання не шифрованого трафіку полягає у захисті конфіденційних даних від відстежування зловмисниками. Даний атрибут був впроваджений у API рівня 23. android:vmSafeMode Вказує чи програма може працювати у безпечному режимі віртуальної машини. Значення за умовчанням - “false”.