- синтаксис:
<application android:allowTaskReparenting=["true" | "false"] android:allowBackup=["true" | "false"] android:allowClearUserData=["true" | "false"] android:allowNativeHeapPointerTagging=["true" | "false"] android:appCategory=["accessibility" | "audio" | "game" | "image" | "maps" | "news" | "productivity" | "social" | "video"] android:backupAgent="string" android:backupInForeground=["true" | "false"] android:banner="drawable resource" android:dataExtractionRules="string resource" android:debuggable=["true" | "false"] android:description="string resource" android:enabled=["true" | "false"] android:enableOnBackInvokedCallback=["true" | "false"] android:extractNativeLibs=["true" | "false"] android:fullBackupContent="string" android:fullBackupOnly=["true" | "false"] android:gwpAsanMode=["always" | "never"] android:hasCode=["true" | "false"] android:hasFragileUserData=["true" | "false"] android:hardwareAccelerated=["true" | "false"] android:icon="drawable resource" android:isGame=["true" | "false"] android:isMonitoringTool=["parental_control" | "enterprise_management" | "other"] android:killAfterRestore=["true" | "false"] android:largeHeap=["true" | "false"] android:label="string resource" android:logo="drawable resource" android:manageSpaceActivity="string" android:name="string" android:networkSecurityConfig="xml resource" android:permission="string" android:persistent=["true" | "false"] android:process="string" android:restoreAnyVersion=["true" | "false"] android:requestLegacyExternalStorage=["true" | "false"] android:requiredAccountType="string" android:resizeableActivity=["true" | "false"] android:restrictedAccountType="string" android:supportsRtl=["true" | "false"] android:taskAffinity="string" android:testOnly=["true" | "false"] android:theme="resource or theme" android:uiOptions=["none" | "splitActionBarWhenNarrow"] android:usesCleartextTraffic=["true" | "false"] android:vmSafeMode=["true" | "false"] > . . . </application>
- содержится в:
-
<manifest>
- может содержать:
-
<activity>
<activity-alias>
<meta-data>
<service>
<receiver>
<profileable>
<provider>
<uses-library>
<uses-native-library>
- описание:
Декларация приложения. Этот элемент содержит подэлементы, которые объявляют каждый из компонентов приложения, и имеет атрибуты, которые могут влиять на все компоненты.
Многие из этих атрибутов, такие как
icon
,label
,permission
,process
,taskAffinity
иallowTaskReparenting
, устанавливают значения по умолчанию для соответствующих атрибутов элементов компонента. Другие, такие какdebuggable
,enabled
,description
иallowClearUserData
, устанавливают значения для приложения в целом и не переопределяются компонентами.- атрибуты
-
android:allowTaskReparenting
- Могут ли действия, определяемые приложением, перемещаться из задачи, которая их запустила, в задачу, к которой они имеют сродство, когда эта задача в следующий раз будет выведена на передний план. Значение
"true"
означает, что они могут перемещаться, и"false"
означает, что они должны оставаться с задачей, с которой они начали. Значение по умолчанию -"false"
.Элемент
<activity>
имеет собственный атрибутallowTaskReparenting
, который может переопределять установленное здесь значение. -
android:allowBackup
Разрешить ли приложению участвовать в инфраструктуре резервного копирования и восстановления. Если этот атрибут установлен в
"false"
, резервное копирование или восстановление приложения никогда не выполняется, даже при полном резервном копировании системы, которое в противном случае заставляет все данные приложения сохраняться с помощьюadb
. Значение этого атрибута по умолчанию -"true"
.Примечание: Для приложений, ориентированных на Android 12 (уровень API 31) или выше, это поведение отличается. На устройствах некоторых производителей устройств вы не можете отключить миграцию файлов вашего приложения с устройства на устройство.
Однако вы можете отключить облачное резервное копирование и восстановление файлов вашего приложения, установив для этого атрибута значение
"false"
, даже если ваше приложение предназначено для Android 12 (API уровня 31) или выше.Дополнительную информацию см. в разделе «Резервное копирование и восстановление» на странице, где описаны изменения в поведении приложений, ориентированных на Android 12 (уровень API 31) или выше.
-
android:allowClearUserData
Разрешить ли приложению сбрасывать пользовательские данные. Эти данные включают флаги, например, видел ли пользователь вводные подсказки, а также настраиваемые пользователем параметры и предпочтения. Значение этого атрибута по умолчанию —
"true"
.Примечание: Только приложения, являющиеся частью образа системы, могут явно объявлять этот атрибут. Сторонние приложения не могут включать этот атрибут в свои файлы манифеста.
Более подробную информацию см. в разделе Обзор резервного копирования данных .
-
android:allowNativeHeapPointerTagging
Включает ли приложение функцию тегирования указателя кучи. Значение этого атрибута по умолчанию —
"true"
.Примечание: Отключение этой функции не решает основную проблему работоспособности кода. Будущие аппаратные устройства могут не поддерживать этот тег манифеста.
Для получения дополнительной информации см. раздел Тегированные указатели .
-
android:appCategory
Объявляет категорию этого приложения. Категории используются для объединения нескольких приложений в значимые группы, например, при подведении итогов по использованию батареи, сети или диска. Определяйте это значение только для приложений, которые хорошо вписываются в одну из конкретных категорий.
Должно быть одно из следующих постоянных значений.
Ценить Описание accessibility
Приложения, которые в первую очередь являются приложениями специальных возможностей, например, программы чтения с экрана. audio
Приложения, которые в основном работают с аудио или музыкой, например музыкальные проигрыватели. game
Приложения, которые в первую очередь являются играми. image
Приложения, которые в основном работают с изображениями или фотографиями, например приложения камеры или галереи. maps
Приложения, которые в первую очередь являются картографическими приложениями, например, навигационные приложения. news
Приложения, которые в первую очередь являются новостными, например, газеты, журналы или спортивные приложения. productivity
Приложения, которые в первую очередь являются приложениями для повышения производительности, такие как облачное хранилище или приложения для рабочего места. social
Приложения, которые в первую очередь являются социальными приложениями, например, приложения для обмена сообщениями, общения, электронной почты или социальных сетей. video
Приложения, которые в основном работают с видео или фильмами, например приложения для потокового видео. -
android:backupAgent
- Имя класса, реализующего агент резервного копирования приложения, подкласс
BackupAgent
. Значение атрибута — это полное имя класса, например"com.example.project.MyBackupAgent"
. Однако, в качестве сокращения, если первым символом имени является точка, например,".MyBackupAgent"
, оно добавляется к имени пакета, указанному в элементе<manifest>
.Нет значения по умолчанию. Имя должно быть конкретным.
-
android:backupInForeground
- Указывает, что операции Auto Backup могут выполняться в этом приложении, даже если приложение находится в состоянии, эквивалентном переднему плану. Система закрывает приложение во время операции автоматического резервного копирования, поэтому используйте этот атрибут с осторожностью. Установка этого флага в значение
"true"
может повлиять на поведение приложения, пока оно активно.Значение по умолчанию —
"false"
, что означает, что ОС не выполняет резервное копирование приложения, работающего на переднем плане, например музыкального приложения, которое активно воспроизводит музыку с помощью службы в состоянииstartForeground()
. -
android:banner
- Рисуемый ресурс, предоставляющий расширенный графический баннер для связанного с ним элемента. Используйте с тегом
<application>
для предоставления баннера по умолчанию для всех действий приложения или с тегом<activity>
для предоставления баннера для определенного действия.Система использует баннер для представления приложения на главном экране Android TV. Поэтому указывайте это только для приложений с активностью, которая обрабатывает намерение
CATEGORY_LEANBACK_LAUNCHER
.Этот атрибут задается как ссылка на ресурс для рисования, содержащий изображение, например
"@drawable/banner"
. Баннера по умолчанию нет.Для получения дополнительной информации см. раздел Размещение баннера на главном экране .
-
android:dataExtractionRules
Приложения могут устанавливать этот атрибут для XML-ресурса, в котором они указывают правила, определяющие, какие файлы и каталоги можно копировать с устройства в рамках операций резервного копирования или передачи.
Информацию о формате XML-файла см. в разделе Резервное копирование и восстановление .
-
android:debuggable
- Можно ли отлаживать приложение, даже если оно запущено на устройстве в пользовательском режиме. Значение
"true"
если можно, и"false"
если нет. Значение по умолчанию"false"
. -
android:description
- Пользовательский текст о приложении, который длиннее и более описателен, чем метка приложения. Значение задается как ссылка на строковый ресурс. В отличие от метки, оно не может быть необработанной строкой. Значения по умолчанию нет.
-
android:enabled
- Может ли система Android создавать экземпляры компонентов приложения. Это
"true"
если может, и"false"
если нет. Если значение"true"
, атрибутenabled
каждого компонента определяет, включен ли этот компонент. Если значение"false"
, оно переопределяет значения, специфичные для компонента, и все компоненты отключаются.Значение по умолчанию —
"true"
. -
android:enableOnBackInvokedCallback
Этот флаг позволяет отказаться от предиктивной системной анимации на уровне приложения.
Установите
android:enableOnBackInvokedCallback=false
, чтобы отключить предиктивную обратную анимацию на уровне приложения и указать системе игнорировать вызовы API платформыOnBackInvokedCallback
.-
android:extractNativeLibs
- Этот атрибут указывает, извлекает ли установщик пакета собственные библиотеки из APK в файловую систему. Если установлено значение
"false"
, ваши собственные библиотеки хранятся в APK в несжатом виде. Хотя ваш APK может быть больше, ваше приложение загружается быстрее, поскольку библиотеки загружаются непосредственно из APK во время выполнения.Значение по умолчанию
extractNativeLibs
зависит отminSdkVersion
и версии AGP, которую вы используете. В большинстве случаев поведение по умолчанию, вероятно, то, что вам нужно, и вам не нужно устанавливать этот атрибут явно. -
android:fullBackupContent
- Этот атрибут указывает на XML-файл, содержащий полные правила резервного копирования для Auto Backup . Эти правила определяют, какие файлы будут резервироваться. Для получения дополнительной информации см. синтаксис XML-конфигурации для Auto Backup.
Этот атрибут необязателен. Если он не указан, по умолчанию Auto Backup включает большинство файлов вашего приложения. Для получения дополнительной информации см. Файлы, которые копируются .
-
android:fullBackupOnly
- Этот атрибут указывает, следует ли использовать функцию Auto Backup на устройствах, где она доступна. Если установлено значение
"true"
, ваше приложение выполняет функцию Auto Backup при установке на устройстве под управлением Android 6.0 (уровень API 23) или выше. На более старых устройствах ваше приложение игнорирует этот атрибут и выполняет резервное копирование key/value .Значение по умолчанию —
"false"
. -
android:gwpAsanMode
- Этот атрибут указывает, следует ли использовать GWP-ASan — собственную функцию распределителя памяти, которая помогает находить ошибки использования памяти после освобождения и переполнения буфера кучи.
Значение по умолчанию —
"never"
. -
android:hasCode
- Содержит ли приложение какой-либо код DEX, то есть код, использующий язык программирования Kotlin или Java. Если есть, то это
"true"
, если нет —"false"
. Если значение"false"
, система не пытается загрузить какой-либо код приложения при запуске компонентов. Значение по умолчанию —"true"
.Если приложение включает собственный код (C/C++), но не содержит код DEX, следует установить значение
"false"
. Если установить значение"true"
, когда APK не содержит код DEX, приложение может не загрузиться.Это свойство должно учитывать код, включенный в приложение зависимостями. Если приложение зависит от AAR, который использует код Java/Kotlin, или напрямую от JAR,
app:hasCode
должен быть"true"
или опущен, поскольку это значение по умолчанию.Например, ваше приложение может поддерживать доставку функций Play и включать модули функций, которые не генерируют файлы DEX, что является байт-кодом, оптимизированным для платформы Android. Если это так, вам необходимо установить это свойство на
"false"
в файле манифеста модуля, чтобы избежать ошибок времени выполнения. -
android:hasFragileUserData
- Показывать ли пользователю запрос на сохранение данных приложения, когда пользователь удаляет приложение. Значение по умолчанию —
"false"
. -
android:hardwareAccelerated
- Включен ли аппаратно-ускоренный рендеринг для всех действий и представлений в этом приложении. Значение
"true"
, если он включен, и"false"
если нет. Значение по умолчанию"true"
, если вы установилиminSdkVersion
илиtargetSdkVersion
на"14"
или выше. В противном случае значение"false"
.Начиная с Android 3.0 (API уровня 11) приложениям доступен аппаратно-ускоренный рендерер OpenGL для повышения производительности многих распространенных операций с 2D-графикой. Когда включен аппаратно-ускоренный рендерер, большинство операций в Canvas, Paint, Xfermode, ColorFilter, Shader и Camera ускоряются.
Это обеспечивает более плавную анимацию, более плавную прокрутку и улучшенную отзывчивость в целом, даже для приложений, которые явно не используют библиотеки OpenGL фреймворка.
Не все операции OpenGL 2D ускорены. Если вы включаете аппаратно-ускоренный рендерер, протестируйте свое приложение, чтобы оно могло использовать рендерер без ошибок.
Более подробную информацию можно найти в руководстве по аппаратному ускорению .
-
android:icon
- Значок для приложения в целом и значок по умолчанию для каждого из компонентов приложения. Смотрите отдельные атрибуты
icon
для элементов<activity>
,<activity-alias>
,<service>
,<receiver>
и<provider>
.Этот атрибут задается как ссылка на ресурс рисования, содержащий изображение, например
"@drawable/icon"
. Значка по умолчанию нет. -
android:isGame
- Является ли приложение игрой. Система может группировать приложения, классифицированные как игры, или отображать их отдельно от других приложений. Значение по умолчанию —
"false"
. -
android:isMonitoringTool
Указывает, что это приложение предназначено для наблюдения за другими лицами.
Примечание: если приложение объявляет этот атрибут в своем манифесте, разработчик должен следовать политике Stalkerware , чтобы опубликовать приложение в Google Play.
Значения по умолчанию нет. Разработчик должен указать одно из следующих значений:
Ценить Описание "parental_control"
Приложение обеспечивает родительский контроль и специально предназначено для родителей, которые хотят обеспечить безопасность своих детей. "enterprise_management"
Приложение предназначено для предприятий, желающих управлять и отслеживать устройства, выданные сотрудникам. "other"
Приложение предназначено для варианта использования, не указанного в данной таблице. -
android:killAfterRestore
Завершается ли приложение после восстановления его настроек во время операции полного восстановления системы. Операции восстановления одного пакета никогда не приводят к завершению работы приложения. Операции полного восстановления системы обычно выполняются только один раз, при первой настройке телефона. Сторонним приложениям обычно не нужно использовать этот атрибут.
Значение по умолчанию —
"true"
, что означает, что после того, как приложение завершит обработку своих данных во время полного восстановления системы, оно завершит работу.-
android:largeHeap
Создаются ли процессы приложения с большой кучей Dalvik. Это относится ко всем процессам, созданным для приложения. Это относится только к первому приложению, загруженному в процесс. Если вы используете общий идентификатор пользователя, чтобы позволить нескольким приложениям использовать процесс, все они должны использовать эту опцию последовательно, чтобы избежать непредсказуемых результатов.
Большинству приложений это не нужно, и вместо этого они сосредотачиваются на снижении общего использования памяти для повышения производительности. Включение этого также не гарантирует фиксированного увеличения доступной памяти, поскольку некоторые устройства ограничены общей доступной памятью.
Чтобы запросить доступный объем памяти во время выполнения, используйте методы
getMemoryClass()
илиgetLargeMemoryClass()
.-
android:label
- Пользовательская метка для всего приложения и метка по умолчанию для каждого компонента приложения. Смотрите отдельные атрибуты
label
для элементов<activity>
,<activity-alias>
,<service>
,<receiver>
и<provider>
.Метка устанавливается как ссылка на строковый ресурс, так что ее можно локализовать как и другие строки в пользовательском интерфейсе. Однако для удобства при разработке приложения ее также можно установить как необработанную строку.
-
android:logo
- Логотип для приложения в целом и логотип по умолчанию для действий. Этот атрибут задается как ссылка на ресурс для рисования, содержащий изображение, например
"@drawable/logo"
. Логотипа по умолчанию нет. -
android:manageSpaceActivity
- Полное имя подкласса
Activity
, который система запускает, чтобы позволить пользователям управлять памятью, занимаемой приложением на устройстве. Activity также объявляется с помощью элемента<activity>
. -
android:name
- Полное имя подкласса
Application
, реализованного для приложения. При запуске процесса приложения этот класс создается до любого компонента приложения.Подкласс необязателен. Большинству приложений он не нужен. При отсутствии подкласса Android использует экземпляр базового класса
Application
. -
android:networkSecurityConfig
Указывает имя XML-файла, содержащего конфигурацию сетевой безопасности вашего приложения. Значение представляет собой ссылку на XML-файл ресурсов, содержащий конфигурацию.
Этот атрибут был добавлен в API уровня 24.
-
android:permission
- Имя разрешения, которое необходимо клиентам для взаимодействия с приложением. Этот атрибут — удобный способ задать разрешение, которое применяется ко всем компонентам приложения. Он перезаписывается путем установки атрибутов
permission
отдельных компонентов.Дополнительную информацию о разрешениях см. в разделе « Разрешения» в обзоре манифеста приложения и в советах по безопасности .
-
android:persistent
- Остается ли приложение запущенным все время. Если да, то
"true"
если нет, то"false"
. Значение по умолчанию"false"
. Обычно приложения не устанавливают этот флаг. Режим сохранения предназначен только для определенных системных приложений. -
android:process
- Имя процесса, в котором работают все компоненты приложения. Каждый компонент может переопределить это значение по умолчанию, установив свой собственный атрибут
process
.По умолчанию Android создает процесс для приложения, когда первый из его компонентов должен запуститься. Затем все компоненты запускаются в этом процессе. Имя процесса по умолчанию совпадает с именем пакета, заданным элементом
<manifest>
.Установив для этого атрибута имя процесса, которое используется совместно с другим приложением, можно организовать запуск компонентов обоих приложений в одном и том же процессе, но только в том случае, если оба приложения также используют общий идентификатор пользователя и подписаны одним и тем же сертификатом.
Если имя, назначенное этому атрибуту, начинается с двоеточия (
:
), новый процесс, частный для приложения, создается при необходимости. Если имя процесса начинается со строчной буквы, создается глобальный процесс с таким именем. Глобальный процесс может использоваться совместно с другими приложениями, что снижает использование ресурсов. -
android:restoreAnyVersion
- Указывает, что приложение готово попытаться восстановить любой резервный набор данных, даже если резервная копия была сохранена более новой версией приложения, чем та, которая в данный момент установлена на устройстве. Установка этого атрибута в значение
"true"
позволяет диспетчеру резервного копирования$1
Значение этого атрибута по умолчанию —
"false"
. -
android:requestLegacyExternalStorage
Хочет ли приложение отказаться от ограниченного хранилища .
Примечание: в зависимости от изменений, связанных с политикой или совместимостью приложений, система может не выполнить этот запрос на отказ.
-
android:requiredAccountType
- Указывает тип учетной записи, необходимый приложению для работы. Если вашему приложению требуется
Account
, значение этого атрибута должно соответствовать типу аутентификатора учетной записи, используемому вашим приложением, как определено вAuthenticatorDescription
, например"com.google"
.Значение по умолчанию — null, что означает, что приложение может работать без каких-либо учетных записей.
Поскольку ограниченные профили не могут добавлять учетные записи, указание этого атрибута сделает ваше приложение недоступным из ограниченного профиля, если только вы также не объявите
android:restrictedAccountType
с тем же значением.Внимание: если данные учетной записи могут раскрыть личную информацию, важно объявить этот атрибут и оставить
android:restrictedAccountType
пустым, чтобы ограниченные профили не могли использовать ваше приложение для доступа к личной информации, принадлежащей владельцу.Этот атрибут был добавлен в API уровня 18.
-
android:resizeableActivity
Указывает, поддерживает ли приложение многооконный режим .
Этот атрибут можно установить в элементе
<activity>
или<application>
.Если вы установите этот атрибут на
"true"
, пользователь сможет запустить активность в режимах разделенного экрана и свободной формы. Если вы установите атрибут на"false"
, приложение не может быть протестировано или оптимизировано для многооконного режима. Система все равно может перевести активность в многооконный режим с примененным режимом совместимости.Установка этого атрибута в значение
"true"
не гарантирует, что на экране не будет других приложений в многооконном режиме, например, "картинка в картинке" или на других дисплеях. Поэтому установка этого флага не означает, что у вашего приложения есть эксклюзивный доступ к ресурсам.Для приложений, ориентированных на API уровня 24 или выше, значением по умолчанию является
"true"
.Если ваше приложение ориентировано на API уровня 31 или выше, этот атрибут работает по-разному на маленьких и больших экранах:
- Большие экраны (sw >= 600dp): все приложения поддерживают многооконный режим. Атрибут указывает, можно ли изменить размер приложения, а не поддерживает ли приложение многооконный режим. Если
resizeableActivity="false"
, приложение переводится в режим совместимости, когда это необходимо для соответствия размерам дисплея. - Маленькие экраны (sw < 600dp): если
resizeableActivity="true"
и минимальная ширина и минимальная высота основной активности соответствуют требованиям многооконности, приложение поддерживает многооконный режим. ЕслиresizeableActivity="false"
, приложение не поддерживает многооконный режим независимо от минимальной ширины и высоты активности.
Значение корневой активности задачи применяется ко всем дополнительным активностям, запущенным в задаче. То есть, если корневая активность задачи является изменяемо-размерной, то система рассматривает все остальные активности в задаче как изменяемо-размерные. Если корневая активность не является изменяемо-размерной, то и другие активности в задаче не являются изменяемо-размерными.
Этот атрибут был добавлен в API уровня 24.
- Большие экраны (sw >= 600dp): все приложения поддерживают многооконный режим. Атрибут указывает, можно ли изменить размер приложения, а не поддерживает ли приложение многооконный режим. Если
-
android:restrictedAccountType
- Указывает тип учетной записи, требуемый этим приложением, и указывает, что ограниченные профили могут получать доступ к таким учетным записям, которые принадлежат пользователю-владельцу. Если вашему приложению требуется
Account
, а ограниченные профили могут получать доступ к учетным записям основного пользователя, значение этого атрибута должно соответствовать типу аутентификатора учетной записи, используемому вашим приложением, как определено вAuthenticatorDescription
, например"com.google"
.Значение по умолчанию — null, что означает, что приложение может работать без каких-либо учетных записей.
Внимание: указание этого атрибута позволяет ограниченным профилям использовать ваше приложение с учетными записями, принадлежащими владельцу, что может раскрыть персональную информацию. Если учетная запись может раскрыть персональные данные, не используйте этот атрибут. Вместо этого объявите атрибут
android:requiredAccountType
, чтобы сделать ваше приложение недоступным для ограниченных профилей.Этот атрибут был добавлен в API уровня 18.
-
android:supportsRtl
Указывает, готово ли ваше приложение поддерживать макеты с письмом справа налево (RTL).
Если установлено значение
"true"
иtargetSdkVersion
установлено значение 17 или выше, различные API RTL активируются и используются системой, чтобы ваше приложение могло отображать макеты RTL. Если установлено значение"false"
илиtargetSdkVersion
установлено значение 16 или ниже, API RTL игнорируются или не оказывают никакого эффекта, и ваше приложение ведет себя одинаково независимо от направления макета, связанного с выбором локали пользователя. То есть ваши макеты всегда слева направо.Значение этого атрибута по умолчанию —
"false"
.Этот атрибут был добавлен в API уровня 17.
-
android:taskAffinity
- Имя affinity, которое применяется ко всем действиям в приложении, за исключением тех, которые устанавливают другое affinity с собственными атрибутами
taskAffinity
. См. этот атрибут для получения дополнительной информации.По умолчанию все действия в приложении имеют одинаковую аффинити. Имя этой аффинити совпадает с именем пакета, заданным элементом
<manifest>
. -
android:testOnly
- Указывает, предназначено ли это приложение только для целей тестирования. Например, оно может раскрывать функциональность или данные за пределами себя, что может привести к уязвимости безопасности, но быть полезным для тестирования. Этот тип APK устанавливается только через
adb
. Вы не можете опубликовать его в Google Play.Android Studio автоматически добавляет этот атрибут при нажатии кнопки «Выполнить».
.
-
android:theme
- Ссылка на ресурс стиля, определяющий тему по умолчанию для всех действий в приложении. Отдельные действия могут переопределять тему по умолчанию, устанавливая собственные атрибуты
theme
. Для получения дополнительной информации см. раздел Стили и темы . -
android:uiOptions
- Дополнительные параметры для пользовательского интерфейса активности. Должно быть одно из следующих значений:
Ценить Описание "none"
Никаких дополнительных опций пользовательского интерфейса. Это значение по умолчанию. "splitActionBarWhenNarrow"
Добавляет панель внизу экрана для отображения элементов действий на панели приложений , также известной как панель действий , когда ограничено горизонтальное пространство, например, в портретном режиме на телефоне. Вместо небольшого количества элементов действий, отображаемых на панели приложений в верхней части экрана, панель приложений разделяется на верхнюю навигационную секцию и нижнюю панель для элементов действий. Это означает, что для элементов действий и для элементов навигации и заголовка вверху доступно разумное количество места. Элементы меню не разделены между двумя панелями. Они всегда отображаются вместе. Дополнительную информацию о панели приложений см. в разделе Добавление панели приложений .
Этот атрибут был добавлен в API уровня 14.
-
android:usesCleartextTraffic
- Указывает, собирается ли приложение использовать сетевой трафик открытого текста, например открытый текст HTTP. Значение по умолчанию для приложений, нацеленных на API уровня 27 или ниже, —
"true"
. Приложения, нацеленные на API уровня 28 или выше, по умолчанию —"false"
.Если атрибут имеет значение
"false"
, компоненты платформы, например, стеки HTTP и FTP,DownloadManager
иMediaPlayer
, отклоняют запросы приложения на использование открытого текстового трафика.Сторонним библиотекам настоятельно рекомендуется также соблюдать эту настройку. Основная причина избегания открытого текстового трафика — отсутствие конфиденциальности, подлинности и защиты от подделки. Сетевой злоумышленник может подслушивать передаваемые данные, а также изменять их, не будучи обнаруженным.
Этот флаг соблюдается на основе наилучших усилий, поскольку невозможно предотвратить весь трафик открытого текста от приложений Android, учитывая уровень доступа, предоставляемый им. Например, нет никаких ожиданий, что API
Socket
будет соблюдать этот флаг, поскольку он не может определить, находится ли его трафик в открытом тексте.Однако большая часть сетевого трафика от приложений обрабатывается сетевыми стеками и компонентами более высокого уровня, которые могут учитывать этот флаг, считывая его из
ApplicationInfo.flags
илиNetworkSecurityPolicy.isCleartextTrafficPermitted()
.Примечание:
WebView
учитывает этот атрибут для приложений, ориентированных на API уровня 26 и выше.Во время разработки приложения StrictMode может использоваться для идентификации любого открытого текстового трафика из приложения. Для получения дополнительной информации см.
StrictMode.VmPolicy.Builder.detectCleartextNetwork()
.Этот атрибут был добавлен в API уровня 23.
Этот флаг игнорируется на Android 7.0 (уровень API 24) и выше, если присутствует конфигурация безопасности сети Android.
-
android:vmSafeMode
- Указывает, хочет ли приложение, чтобы виртуальная машина (VM) работала в безопасном режиме. Значение по умолчанию —
"false"
.Этот атрибут был добавлен в API уровня 8, где значение
"true"
отключало компилятор Dalvik just-in-time (JIT).Этот атрибут был адаптирован в API уровня 22, где значение
"true"
отключало компилятор ART ahead-of-time (AOT).
Начиная с AGP 4.2.0, параметр DSL
useLegacyPackaging
заменяет атрибут манифестаextractNativeLibs
. ИспользуйтеuseLegacyPackaging
в файлеbuild.gradle
вашего приложения вместоextractNativeLibs
в файле манифеста для настройки поведения сжатия собственной библиотеки. Для получения дополнительной информации см. примечание к выпуску Использование DSL для упаковки сжатых собственных библиотек .-
- введено в:
- Уровень API 1
- см. также:
-
<activity>
<service>
<receiver>
<provider>
<приложение>
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-06-10 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-06-10 UTC."],[],[]]