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

См. список ниже, чтобы изучить основную терминологию Android Open Source Project (AOSP). Вот другие источники определений ключевых терминов:

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

Программы

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

Связанный: Применение .

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

Связанный: Намерение .

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

Связанный: .apk , активность

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

Связанный: Намерение , Намерение фильтр .

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

Связанный: URI Использование в Android

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

Связанный: активность .

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

Связанный: Намерение фильтр , Broadcast Receiver .

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

Связанный: Намерение , Broadcast Receiver .

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

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

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

Строить

адб
Android Debug Bridge — приложение для отладки командной строки, включенное в SDK. Он предоставляет инструменты для просмотра устройства, копирования инструментов на устройство и перенаправления портов для отладки. Если вы разрабатываете в Android Studio, adb интегрируется в вашу среду разработки. Смотрите Android Debug Bridge для получения дополнительной информации.
Android-проект
Репозиторий Git на хосте Android Gerrit. См управления Источником Инструменты> Геррит для получения дополнительной информации.
Построить отпечаток пальца
Отпечаток сборки — это уникальная удобочитаемая строка, содержащая информацию о производителе, выдаваемую каждой сборке. См Понимание построения отпечатков пальцев для получения дополнительной информации.
Гит
Инструмент управления исходным кодом, используемый Android, который исторически работал с одним репозиторием Git. Используется в сочетании с Repo для нескольких хранилищ Git. См управления Источник Инструменты> Git для получения дополнительной информации.
Ветка 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 .
Файл манифеста
XML-файл, описывающий группировку репозиториев Git для каждой ветки, ревизии Git, в которых следует извлекать эти репозитории, и их расположение в файловой системе. Этот XML - файл, как правило , с именем default.xml , связан с ответвлением Репо и описывает репозитории Git и Git ветви проверили при инициализации и синхронизации филиала Репо. Этот файл определяет различные репозитории Git, которые инструмент Repo должен получить в клиентской кассе Repo для создания продукта (например, Android Automotive OS). Просмотреть все манифесты на android.googlesource.com/platform/manifest/+refs . См по умолчанию манифест включены в AndroidManifest файлы , чтобы тянуть в Android платформы файлов (AOSP) в android.googlesource.com/platform/manifest/+/refs/heads/master/default.xml . Смотрите файл AndroidManifest.xml для информации и приложений репо манифеста формата для развития платформы.
Беспроводное (OTA) обновление
Устройства Android в полевых условиях могут получать и устанавливать беспроводные (OTA) обновления системы, прикладного программного обеспечения и правил часового пояса. См OTA обновления для получения дополнительной информации.
Репо
Оболочка вокруг Git, упрощающая работу с несколькими репозиториями Git. Он объединяет множество репозиториев Git и управляет ими как единой кассой или кодовой базой. См управления Источник Инструменты> Repo для получения дополнительной информации.
Филиал РЕПО
Коллекция Git репозитории захватили в AndroidManifest файл , который представляет собой версию (сборки) в Android кодовом, например, android11-gsi или aosp-android-games-sdk , загруженные через repo init и repo sync команд. Смотрите файл манифеста описания ссылок на все файлы манифеста и использовать https://cs.android.com/ для поиска их сборки.
вверх
Как правило, uprev обновляет составляющий подпроект более крупного проекта до более новой версии. Uprev изменяет уровень редакции либо на следующую увеличенную версию, либо на последнюю доступную версию. В случае пакета HIDL, чтобы поддерживать расширяемость пакета уровень обратной совместимости , несовершеннолетний-версию uprev обновляет новый пакет на более высокую младшую версию, сохраняя то же имя и основную версию , как старый пакет. В случае конфигурации Bootloader , uprev обновляет версию поддержки заголовка загрузки до последней версии.

Графика

Холст
Чертежная поверхность , которая обрабатывает композитинг фактических бит против Bitmap или поверхности объекта. Он имеет методы для стандартного компьютерного рисования растровых изображений, линий, кругов, прямоугольников, текста и т. д. и привязан к растровому изображению или поверхности. Холст — это самый простой и легкий способ рисовать 2D-объекты на экране. Базовый класс Canvas .

Связанный: Drawable , OpenGL ES , поверхность .

Drawable
Скомпилированный визуальный ресурс, который можно использовать в качестве фона, заголовка или другой части экрана. Drawable обычно загружается в другой элемент пользовательского интерфейса, например, в качестве фонового изображения. Drawable не может получать события, но назначает различные другие свойства, такие как «состояние» и планирование, для включения подклассов, таких как объекты анимации или библиотеки изображений. Многие объекты для рисования загружаются из файлов ресурсов для рисования — файлов xml или растровых изображений, описывающих изображение. Drawable ресурсы компилируются в подклассы android.graphics.drawable . Для получения дополнительной информации о других и вводимого коэффициента ресурсов см Ресурсы .

Связанный: Ресурсы , Холст

Ресурс макета
XML-файл, описывающий макет экрана Activity.

Близкие по теме: Ресурсы

Изображение с девятью патчами / 9 патчами / девятью патчами
Ресурс растрового изображения с изменяемым размером, который можно использовать для фона или других изображений на устройстве. См Nine-Patch Stretchable изображения для получения дополнительной информации.

Близкие по теме: Ресурсы .

OpenGL ЕС
Android предоставляет библиотеки OpenGL ES для аппаратного ускорения 3D-рендеринга. Для 2D - рендеринга, холст является более простым вариантом.»OpenGL ES доступен в Android Kit Native Development (НКА) для простоты использования. В android.opengl и javax.microedition.khronos.opengles пакетов раскрыть функциональность OpenGL ES.

Связанный: Холст , Поверхность

Поверхность
Объект типа Surface , представляющий собой блок памяти , который получает скомпонован на экран. Поверхность содержит объект Canvas для рисования и предоставляет различные вспомогательные методы для рисования слоев и изменения размера поверхности. Вы не должны использовать этот класс напрямую; использовать SurfaceView вместо этого.

Связанный: Холст

SurfaceView
Объект View, который обертывает Surface для рисования и предоставляет методы для динамического указания его размера и формата. SurfaceView предоставляет способ рисования независимо от потока пользовательского интерфейса для ресурсоемких операций (таких как игры или предварительный просмотр камеры), но в результате использует дополнительную память. SurfaceView поддерживает графику Canvas и OpenGL ES. Базовый класс SurfaceView .

Связанный: Поверхностный

Тема
Набор свойств (размер текста, цвет фона и т. д.), объединенных вместе для определения различных параметров отображения по умолчанию. Android предоставляет несколько стандартных тем, перечисленных в R.style (начиная с «theme_»).
Вид
Объект, который рисует прямоугольную область на экране и обрабатывает щелчок, нажатие клавиши и другие события взаимодействия. Представление — это базовый класс для большинства компонентов макета экрана действия или диалогового окна (текстовые поля, окна и т. д.). Он принимает вызовы от родительского объекта (см ViewGroup ) рисовать себя, и информирует его родительский объект о том, где и насколько она хотела бы быть (которые могут или не могут быть соблюдены родителем). Для получения дополнительной информации см View .

Связанный: Просмотр иерархии , ViewGroup , Widget

Просмотр иерархии
Расположение объектов View и ViewGroup, определяющее пользовательский интерфейс для каждого компонента приложения. Иерархия состоит из групп представлений, содержащих одно или несколько дочерних представлений или групп представлений. Вы можете получить визуальное представление иерархии представлений для отладки и оптимизации с помощью средства просмотра иерархии , который поставляется с Android SDK.

Связанный: Вид , ViewGroup

ViewGroup
Объект-контейнер, который группирует набор дочерних представлений. Группа представлений отвечает за решение о том, где размещать дочерние представления и насколько они могут быть большими, а также за вызов каждого из них для рисования самого себя, когда это необходимо. Некоторые группы просмотра невидимы и предназначены только для макета, в то время как другие имеют встроенный пользовательский интерфейс (например, прокручиваемый список). Просмотр групп все в widget пакете, но продлить ViewGroup .

Связанный: Просмотр , Просмотр иерархии

Виджет
Один из набора полностью реализованных подклассов View, которые отображают элементы формы и другие компоненты пользовательского интерфейса, такие как текстовое поле или всплывающее меню. Поскольку виджет полностью реализован, он самостоятельно измеряет и рисует, а также реагирует на экранные события. Виджеты все в android.widget пакете.
Окно
В Android приложения, объект , производный от абстрактного класса Window , который определяет элементы общего окна, такие , как выглядеть и чувствовать себя (строка заголовка текста, расположение и содержание меню и так далее). Dialog и Activity используют реализацию этого класса для отображения окна. Вам не нужно реализовывать этот класс или использовать окна в своем приложении.

Платформа

Среда выполнения Android (ART) и Dalvik
Среда выполнения Android (ART) — это управляемая среда выполнения, используемая приложениями и некоторыми системными службами Android. Среда выполнения Android (ART) — это среда выполнения по умолчанию для устройств под управлением Android 5.0 (уровень API 21) и выше. ART и его предшественник Dalvik изначально были созданы специально для проекта Android Open Soure. ART в качестве среды выполнения выполняет формат исполняемого файла Dalvik и спецификацию байт-кода Dex. ART и Dalvik — совместимые среды выполнения с байт-кодом Dex, поэтому приложения, разработанные для Dalvik, должны работать при работе с ART.
Кодовая линия
Кодовая строка содержит выпуск программного продукта. Он состоит из одной или нескольких веток из одного или нескольких репозиториев, которые часто одновременно находятся в активной разработке. Кодовая линия — это точка агрегации и цель релиза. Для получения дополнительной информации о codelines см Android Management Software .
.dex-файл
Скомпилированный файл кода Android-приложения.

Программы для Android скомпилированы в файлы .dex (Dalvik Executable), которые, в свою очередь, заархивированы в один файл .apk на устройстве. Файлы .dex можно создавать путем автоматического перевода скомпилированных приложений, написанных на языке программирования Java.

Контрольная работа

Артефакты
Артефакты — это журналы сборки, позволяющие локально устранять неполадки. Эти журналы доступны непосредственно из Геррита при просмотре списка изменений. Прокрутите вниз до Presubmit Статус и нажмите на красную ссылку Построить для просмотра или загрузки связанного с ним build_error.log файл. Вы также можете получить эти артефакты из центрального Android непрерывного сервера интеграции на ci.android.com/ нажав Download (стрелка вниз) значок цели и сборку. Для получения более подробной информации о том , как найти артефакты, увидеть Android непрерывной интеграции .
CDD
Документ определения совместимости с Android (CDD) перечисляет требования, которые должны быть выполнены, чтобы ваши устройства были совместимы с последней версией Android. Чтобы считаться совместимыми с Android, реализации устройств ДОЛЖНЫ соответствовать требованиям, представленным в этом определении совместимости, включая любые документы, включенные посредством ссылки. Для получения более подробной информации о CDD см Android Compatibility Definition Document .
КТС
Набор тестов совместимости (CTS) — это набор тестов для проверки правильности API и спецификации, изложенной в CDD. Он доступен в качестве источника в AOSP и для загрузки в виде двоичного файла. Для получения дополнительной информации см Совместимость Test Suite .
Верификатор CTS
Средство проверки набора тестов совместимости (CTS Verifier) ​​является дополнением к CTS. CTS Verifier предоставляет тесты для API и функций, которые невозможно протестировать на стационарном устройстве без ручного ввода (например, качество звука, акселерометр и т. д.). Для получения дополнительной информации см Использование CTS Verifier .
Отладка
Отладка требует поиска и исправления ошибок в коде платформы Android либо в функциях, либо в их тестах. Для получения дополнительной информации см Debugging нативного Android платформа код
тест
GoogleTest — это платформа Google для тестирования и имитации C++. Найти код в github.com/google/googletest и документации на google.github.io/googletest .
Инструментальный тест
Испытания приборов обеспечивают специальную среду выполнения теста , как выдвинутое am instrument командой, где целевой процесс перезапуске приложения и инициализируется с основным контекстом приложения, и инструментовка нить запускаются внутри виртуальной машины процесса приложения. Для получения дополнительной информации см Instrumentation тестов .
Логкэт
Logcat это инструмент командной строки , которая сбрасывает журнал системных сообщений, в том числе трассировки стека , когда устройство выдает сообщение об ошибке и сообщения , которые вы написали из вашего приложения с Log класса. Для получения дополнительной информации см инструмента Logcat командной строки .
логирование
Вход в Android является сложным из - за сочетание используемых стандартов, которые объединены в logcat . Для получения дополнительной информации об основных стандартах, см Понимания Logging .
Объединить конфликт
Конфликт слияния возникает, когда две или более версий одного и того же файла больше не могут автоматически объединяться сервером сборки Android. Обычно это требует ручного редактирования файла для разрешения всех конфликтующих обновлений.
Собственный тест
Собственный тест для платформы обычно обращается к уровням абстракции более низкого уровня или выполняет необработанный IPC для различных системных служб. Поэтому подход к тестированию обычно тесно связан с тестируемой службой. Для получения дополнительной информации см Native тестов .
Трейдфед
Тестовая система Trade Federation (Tradefed или TF для краткости) — это среда непрерывного тестирования, предназначенная для запуска тестов на устройствах Android. Например, Tradefed используется для запуска CTS и VTS. Для получения дополнительной информации см торговли Обзор Федерации .
СУДС
Android Vendor Test Suite (VTS) предоставляет широкие возможности для тестирования Android, поддерживает процесс разработки, управляемый тестированием, и автоматизирует тестирование ядра HAL и ОС. Для получения дополнительной информации см Vendor Test Suite (СДС) и инфраструктуры .