Глоссарий платформы Android

Ниже приведён список основных терминов проекта Android Open Source Project (AOSP). Другие источники определений ключевых терминов приведены ниже:

См. раздел «Уважительное отношение к коду» для примеров терминологии, которую следует использовать и избегать для создания более инклюзивной экосистемы.

Приложения

APK-файл (.apk)
Файл пакета приложения Android имеет расширение .apk . Каждое приложение Android компилируется и упаковывается в один файл, который включает весь код приложения (файлы DEX с расширением .dex ), ресурсы, активы и файл манифеста. Файл пакета приложения может иметь любое имя, но обязательно должен использовать расширение .apk , например, myExampleAppname.apk . Для удобства файл пакета приложения часто называют APK.

По теме: приложение

действие
Описание того, что отправитель намерения хочет, чтобы было сделано. Действие — это строковое значение, присваиваемое намерению. Строки действий могут быть определены Android или сторонним разработчиком. Например, android.intent.action.VIEW для веб-адреса или com.example.rumbler.SHAKE_PHONE для пользовательского приложения, которое вибрирует телефон.

Связанные темы: намерение

активность
В приложении используется отдельный экран с соответствующим Java-кодом, производный от класса Activity . Чаще всего Activity визуально представляется в виде полноэкранного окна, которое может получать и обрабатывать события пользовательского интерфейса и выполнять сложные задачи благодаря используемому для отрисовки окну. Activity обычно является полноэкранным, но может быть также плавающим или прозрачным.
приложение
С точки зрения компонентов, приложение Android состоит из одной или нескольких активностей, сервисов, слушателей и получателей намерений. С точки зрения исходных файлов, приложение Android состоит из кода, ресурсов, ресурсов и единого манифеста. Во время компиляции эти файлы упаковываются в один файл, называемый файлом пакета приложения (APK).

Связанные темы: файл APK (.apk) , активность

вещательный приемник
Объект, основанный на классе BroadcastReceiver , прослушивает широковещательные интенты, отправляемые не в одно целевое приложение или активность. Система отправляет широковещательный интент всем заинтересованным получателям, которые обрабатывают интенты последовательно.

См. также: намерение , фильтр намерений

поставщик контента
Слой абстракции данных, который можно использовать для безопасного предоставления доступа к данным вашего приложения другим приложениям. Поставщик контента построен на основе класса ContentProvider , который обрабатывает строки запроса контента определенного формата для возврата данных в определенном формате. Дополнительную информацию см. в разделе «Поставщики контента» .

См. также: URI в Android

диалог
Плавающее окно, выступающее в качестве облегченной формы. Диалоговое окно может содержать только кнопки и предназначено для выполнения простого действия (например, выбора кнопки) и, возможно, возврата значения. Диалоговое окно не предназначено для сохранения в стеке истории, наличия сложной компоновки или выполнения сложных действий. Android предоставляет по умолчанию простое диалоговое окно с необязательными кнопками, или вы можете определить свою собственную компоновку диалогового окна. Базовым классом для диалоговых окон является Dialog .

Связанные темы: активность

намерение
Объект сообщения, который можно использовать для асинхронного запуска или взаимодействия с другими приложениями или действиями. Объект Intent — это экземпляр класса Intent . Он включает в себя несколько полей критериев, которые можно указать, чтобы определить, какое приложение или действие получит Intent и что делает получатель при обработке Intent. Доступные критерии включают желаемое действие, категорию, строку данных, MIME-тип данных и класс обработки. Приложение отправляет Intent в систему Android, а не напрямую другому приложению или действию. Приложение может отправить Intent одному целевому приложению или отправить его в виде широковещательной рассылки, которая, в свою очередь, может быть обработана несколькими приложениями последовательно. Система Android отвечает за определение наилучшего доступного получателя для каждого Intent на основе критериев, указанных в Intent, и фильтров Intent, определенных другими приложениями. Для получения дополнительной информации см. Intent и фильтры Intent .

См. также: фильтр намерений , широковещательный приемник

фильтр намерений
Объект фильтра, который приложение объявляет в своем манифесте, чтобы сообщить системе, какие типы интентов каждый из его компонентов готов принимать и по каким критериям. С помощью фильтра интентов приложение может выражать заинтересованность в определенных типах данных, действиях интентов, форматах URI и так далее. При разрешении интента система оценивает все доступные фильтры интентов во всех приложениях и передает интент приложению или действию, которое наилучшим образом соответствует интенту и критериям. Для получения дополнительной информации см. Интенты и фильтры интентов .

См. также: намерение , широковещательный приемник

ресурсы
Непрограммные компоненты приложения, находящиеся вне скомпилированного кода приложения, но которые могут быть загружены из кода приложения с использованием общеизвестного формата ссылок. Android поддерживает множество типов ресурсов, но типичные ресурсы приложения будут состоять из строк пользовательского интерфейса, компонентов компоновки пользовательского интерфейса, графических или других медиафайлов и так далее. Приложение использует ресурсы для эффективной поддержки локализации и различных профилей и состояний устройств. Например, приложение будет включать отдельный набор ресурсов для каждого поддерживаемого типа локальной сети или устройства, и оно может включать ресурсы компоновки, специфичные для текущей ориентации экрана (альбомная или портретная). Для получения дополнительной информации о ресурсах см. Обзор ресурсов приложения . Ресурсы приложения всегда хранятся в подпапках res/* проекта.
услуга
Объект класса Service , работающий в фоновом режиме (без отображения пользовательского интерфейса) и выполняющий различные постоянные действия, такие как воспроизведение музыки или мониторинг сетевой активности.

Связанные темы: активность

URI в Android
Android использует строки унифицированных идентификаторов ресурсов (URI) в качестве основы для запроса данных в поставщике контента (например, для получения списка контактов) и для запроса действий в интенте (например, для открытия веб-страницы в браузере). Схема и формат URI специализированы в зависимости от типа использования, и приложение может обрабатывать определенные схемы и строки URI любым предпочтительным способом. Некоторые схемы URI зарезервированы системными компонентами. Например, запросы данных от поставщика контента должны использовать content:// . В интенте URI, использующий схему http:// обрабатывается браузером.

Строить

адб
Android Debug Bridge — это приложение для отладки из командной строки, входящее в состав SDK. adb предоставляет инструменты для просмотра содержимого устройства, копирования инструментов на устройство и перенаправления портов для отладки. Если вы разрабатываете в Android Studio, adb интегрирован в вашу среду разработки. Аббревиатура пишется строчными буквами в обычном текстовом виде. При указании конкретной команды используется обозначение adb . См. раздел «Проверка наличия fastboot и adb» для получения дополнительной информации.
проект Android
Репозиторий Git на хосте Gerrit под управлением Android. Дополнительную информацию о работе Git см. в разделе «Редактор исходного кода Git» .

См. также: Репозиторий Git

создать отпечаток пальца
Уникальная, удобочитаемая строка, содержащая информацию о производителе, которая выдается для каждой сборки. Дополнительную информацию см. в разделе «Создание OTA-пакетов» .
Каноническая ветка Git
Для каждого репозитория Git существуют отдельные версии, например, android-11.0.0_r1 , которую можно найти по адресу cs.android.com/android/platform/superproject/+/android-11.0.0_r1 . Дополнительную информацию см. в разделе «Ветвление Git — ветки в двух словах» .
Ветка Git - локальная
Временная ветка в текущем клиенте Repo для внесения изменений в код, созданная с помощью команды repo start branch-name . Это активная линия разработки. Самый последний коммит в ветке называется вершиной этой ветки.
Репозиторий Git
Иногда называемая проектом , это часть кодовой базы, представляющая собой конкретный компонент или тип устройства, например, frameworks/base или platform/packages/apps/Car/Media .

См. также: проект Android

файл манифеста
XML-файл, описывающий группировку репозиториев Git по веткам, ревизии Git, с которых следует извлекать эти репозитории, и их расположение в файловой системе. Этот XML-файл, обычно называемый default.xml , связан с веткой Repo и описывает репозитории Git и ветки Git, которые извлекаются при инициализации и синхронизации ветки Repo. Этот файл определяет различные репозитории Git, которые инструмент Repo должен загрузить в извлеченный репозиторий клиента Repo для сборки продукта (например, Android Automotive OS). См. все манифесты по адресу android.googlesource.com/platform/manifest/+refs . См. манифест по умолчанию, включенный в файлы манифестов для извлечения файлов платформы Android (AOSP), по адресу android.googlesource.com/platform/manifest/+/refs/heads/android17-release/default.xml . См. обзор манифестов приложений для получения информации о приложениях и формат манифеста репозитория для разработки платформы.
обновление по беспроводной сети (OTA)
Устройства Android, используемые в полевых условиях, могут получать и устанавливать обновления системы, приложений и правил часовых поясов по беспроводной сети (OTA). Дополнительную информацию см. в разделе «Обновления OTA» .
Ветка репо
Набор репозиториев Git, зафиксированных в файле манифеста , который представляет собой версию (сборку) кодовой базы Android, например, android11-gsi или aosp-android-games-sdk , загруженную с помощью команд repo init и repo sync . См. описание файла манифеста для ссылок на все файлы манифеста и используйте Android Code Search для поиска их сборок.
uprev
Как правило, uprev обновляет составной подпроект более крупного проекта до более новой версии. Uprev изменяет уровень ревизии либо на следующую версию с приращением, либо на последнюю доступную версию. В случае пакета HIDL, для сохранения обратно совместимой расширяемости на уровне пакета , uprev минорной версии обновляет новый пакет до более высокой минорной версии, сохраняя при этом то же имя и основную версию, что и у старого пакета. В случае конфигурации загрузчика uprev обновляет поддержку версии заголовка загрузки до последней версии.

Платформа

Android Runtime (ART) и Dalvik
Android Runtime (ART) — это управляемая среда выполнения, используемая приложениями и некоторыми системными службами на Android. ART является средой выполнения по умолчанию для устройств под управлением Android 5.0 (уровень API 21) и выше. ART и его предшественник Dalvik изначально были созданы специально для проекта Android Open Source Project. ART как среда выполнения выполняет исполняемый файл формата Dalvik и спецификацию байт-кода Dex. ART и Dalvik — совместимые среды выполнения, работающие с байт-кодом Dex, поэтому приложения, разработанные для Dalvik, должны работать и при использовании ART.
DEX-файл (.dex)
Файл кода скомпилированного Android-приложения. Программы для Android компилируются в исполняемые файлы Dalvik (DEX) с расширением .dex , которые, в свою очередь, архивируются в один APK-файл на устройстве. DEX-файлы могут быть созданы путем автоматического перевода скомпилированных приложений, написанных на языке программирования Java.