См. список ниже, чтобы изучить основную терминологию Android Open Source Project (AOSP). Вот другие источники определений ключевых терминов:
- Раздел параметров сборки документа определения совместимости с Android (CDD)
- Аудио Терминология
- Терминология USB-аудио
- Автомобильная терминология
- Автомобильная терминология номеронабирателя
- Терминология кластера автомобильных приборов
- Словарь разработчиков приложений
- Терминология версии камеры
- Терминология наложения дерева устройств (DTO)
- Матрица совместимости платформ (FCM) Терминология жизненного цикла
- Терминология здоровья
- Терминология HIDL
- Аппаратная терминология хранилища ключей
- Мультиэкранная терминология
См. Кодирование с уважением для примеров терминологии, которую следует использовать и избегать для более инклюзивной экосистемы.
Программы
- .apk-файл
- Файл пакета приложения Android. Каждое приложение для Android компилируется и упаковывается в один файл, который включает весь код приложения (файлы .dex), ресурсы, активы и файл манифеста. Файл пакета приложения может иметь любое имя, но должен иметь расширение
.apk
. Например:myExampleAppname.apk
. Для удобства файл пакета приложения часто называют «.apk».Связано: Приложение .
- Действие
- Описание того, что хочет сделать отправитель Intent . Действие — это строковое значение, присвоенное намерению. Строки действий могут быть определены Android или сторонним разработчиком. Например, android.intent.action.VIEW для URL-адреса в Интернете или com.example.rumbler.SHAKE_PHONE для пользовательского приложения для вибрации телефона.
Связано: намерение .
- Мероприятия
- Один экран в приложении с поддерживающим кодом Java, производным от класса
Activity
. Чаще всего действие визуально представлено полноэкранным окном, которое может получать и обрабатывать события пользовательского интерфейса и выполнять сложные задачи из-за окна, которое оно использует для отображения своего окна. Хотя активность обычно полноэкранная, она также может быть плавающей или прозрачной. - Заявление
- С точки зрения компонентов приложение Android состоит из одного или нескольких действий, служб, прослушивателей и приемников намерений. С точки зрения исходного файла приложение Android состоит из кода, ресурсов, ресурсов и одного манифеста. Во время компиляции эти файлы упаковываются в один файл, называемый файлом пакета приложения (.apk).
Связанные: .apk , Активность
- Широковещательный приемник
- Класс приложения, который прослушивает широковещательные намерения, а не отправляется одному целевому приложению/действию. Система доставляет широковещательный Intent всем заинтересованным широковещательным получателям, которые последовательно обрабатывают Intent.
Связанные: намерение , фильтр намерения .
- Поставщик услуг
- Уровень абстракции данных, который можно использовать для безопасного предоставления данных вашего приложения другим приложениям. Поставщик содержимого построен на основе класса
ContentProvider
, который обрабатывает строки запроса содержимого определенного формата для возврата данных в определенном формате. Дополнительную информацию см. в разделе Content Providers .Связанный: Использование URI в Android
- Диалог
- Плавающее окно, которое действует как облегченная форма. Диалоговое окно может иметь только элементы управления кнопками и предназначено для выполнения простого действия (например, выбора кнопки) и, возможно, для возврата значения. Диалог не должен сохраняться в стеке истории, содержать сложный макет или выполнять сложные действия. Android предоставляет простой диалог по умолчанию с дополнительными кнопками, хотя вы можете определить свой собственный макет диалога. Базовым классом для диалогов является
Dialog
.Связано: Активность .
- Намерение
- Объект сообщения, который можно использовать для асинхронного запуска или взаимодействия с другими приложениями/действиями. Объект Intent является экземпляром
Intent
. Он включает в себя несколько полей критериев, которые вы можете указать, чтобы определить, какое приложение/действие получает намерение и что делает получатель при обработке намерения. Доступные критерии включают желаемое действие, категорию, строку данных, тип данных MIME, класс обработки и другие. Приложение отправляет Intent в систему Android, а не напрямую другому приложению/действию. Приложение может отправить намерение одному целевому приложению или отправить его в виде широковещательной рассылки, которая, в свою очередь, может обрабатываться несколькими приложениями последовательно. Система Android отвечает за определение наилучшего доступного получателя для каждого намерения на основе критериев, предоставленных в намерениях и фильтрах намерений, определенных другими приложениями. Дополнительные сведения см. в разделе Намерения и фильтры намерений .Связанные: фильтр намерений , широковещательный приемник .
- Фильтр намерений
- Объект фильтра, который приложение объявляет в своем файле манифеста, чтобы сообщить системе, какие типы намерений каждый из его компонентов готов принять и с какими критериями. С помощью фильтра намерений приложение может проявлять интерес к определенным типам данных, действиям намерения, форматам URI и т. д. При разрешении намерения система оценивает все доступные фильтры намерений во всех приложениях и передает намерение приложению/действию, которое лучше всего соответствует намерению и критериям. Дополнительные сведения см. в разделе Намерения и фильтры намерений .
Связанные: намерение , широковещательный приемник .
- Ресурсы
- Непрограммные компоненты приложения, которые являются внешними по отношению к скомпилированному коду приложения, но которые могут быть загружены из кода приложения с использованием общеизвестного эталонного формата. Android поддерживает различные типы ресурсов, но ресурсы типичного приложения состоят из строк пользовательского интерфейса, компонентов макета пользовательского интерфейса, графических или других медиафайлов и т. д. Приложение использует ресурсы для эффективной поддержки локализации и различных профилей и состояний устройств. Например, приложение может включать отдельный набор ресурсов для каждого поддерживаемого локального типа или типа устройства, а также ресурсы макета, характерные для текущей ориентации экрана (альбомной или портретной). Дополнительные сведения о ресурсах см. в разделе Ресурсы и активы . Ресурсы приложения всегда хранятся в подпапках
res/*
проекта. - Услуга
- Объект класса
Service
, который работает в фоновом режиме (без присутствия пользовательского интерфейса) для выполнения различных постоянных действий, таких как воспроизведение музыки или мониторинг сетевой активности.Связанные: активность
- URI в Android
- Android использует строки URI (унифицированный идентификатор ресурса) в качестве основы для запроса данных у поставщика контента (например, для получения списка контактов) и для запроса действий в Intent (например, открытие веб-страницы в браузере). Схема и формат URI специализированы в соответствии с типом использования, и приложение может обрабатывать определенные схемы и строки URI любым способом. Некоторые схемы URI зарезервированы системными компонентами. Например, запросы данных от поставщика контента должны использовать
content://
. В Intent URI, использующий схемуhttp://
, будет обрабатываться браузером.
Строить
- адб
- Android Debug Bridge — приложение для отладки командной строки, включенное в SDK. Он предоставляет инструменты для просмотра устройства, копирования инструментов на устройство и перенаправления портов для отладки. Если вы разрабатываете в Android Studio, adb интегрируется в вашу среду разработки. Дополнительную информацию см. в разделе Android Debug Bridge .
- Android-проект
- Репозиторий Git на хосте Android Gerrit. Дополнительные сведения см. в разделе Инструменты управления версиями > 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 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 и управляет ими как единой кассой или кодовой базой. Дополнительные сведения см. в разделе Инструменты управления версиями > Репозиторий .
- Филиал РЕПО
- Набор репозиториев Git, захваченных в файле AndroidManifest , который представляет собой версию (сборку) кодовой базы Android, например
android11-gsi
илиaosp-android-games-sdk
, загруженную с помощью командrepo init
иrepo sync
. См. описание файла манифеста для ссылок на все файлы манифеста и используйте https://cs.android.com/ для поиска их сборок. - вверх
- Как правило, uprev обновляет составляющий подпроект более крупного проекта до более новой версии. Uprev изменяет уровень редакции либо на следующую увеличенную версию, либо на последнюю доступную версию. В случае с пакетом HIDL, для обеспечения обратной совместимости на уровне пакета, обновление дополнительной версии обновляет новый пакет до более высокой дополнительной версии, сохраняя при этом то же имя и основную версию, что и у старого пакета. В случае конфигурации загрузчика uprev обновляет поддержку версии загрузочного заголовка до последней версии.
Графика
- Холст
- Поверхность рисования, которая обрабатывает наложение фактических битов на объект Bitmap или Surface . Он имеет методы для стандартного компьютерного рисования растровых изображений, линий, кругов, прямоугольников, текста и т. д. и привязан к растровому изображению или поверхности. Холст — это самый простой и легкий способ рисовать 2D-объекты на экране. Базовый класс —
Canvas
. - Drawable
- Скомпилированный визуальный ресурс, который можно использовать в качестве фона, заголовка или другой части экрана. Drawable обычно загружается в другой элемент пользовательского интерфейса, например, в качестве фонового изображения. Drawable не может получать события, но назначает различные другие свойства, такие как «состояние» и планирование, для включения подклассов, таких как объекты анимации или библиотеки изображений. Многие объекты для рисования загружаются из файлов ресурсов для рисования — файлов xml или растровых изображений, описывающих изображение. Ресурсы Drawable компилируются в подклассы
android.graphics.drawable
. Дополнительные сведения о чертежах и других ресурсах см. в разделе Ресурсы . - Ресурс макета
- XML-файл, описывающий макет экрана Activity.
Связанные: Ресурсы
- Изображение с девятью патчами / 9 патчами / девятью патчами
- Ресурс растрового изображения с изменяемым размером, который можно использовать для фона или других изображений на устройстве. Дополнительную информацию см. в разделе «Растягивающееся изображение с девятью патчами».
Связанные: Ресурсы .
- OpenGL ЕС
- Android предоставляет библиотеки OpenGL ES для аппаратного ускорения 3D-рендеринга. Для 2D-рендеринга Canvas является более простым вариантом». OpenGL ES доступен в Android Native Development Kit (NDK) для простоты использования. Пакеты
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
.Связанные: View Hierarchy , ViewGroup , Widget
- Просмотр иерархии
- Расположение объектов View и ViewGroup, определяющее пользовательский интерфейс для каждого компонента приложения. Иерархия состоит из групп представлений, содержащих одно или несколько дочерних представлений или групп представлений. Вы можете получить визуальное представление иерархии представлений для отладки и оптимизации с помощью средства просмотра иерархии , которое поставляется с Android SDK.
Связанные: представление , группа просмотра
- 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 Source Project. ART в качестве среды выполнения выполняет формат исполняемого файла Dalvik и спецификацию байт-кода Dex. ART и Dalvik — совместимые среды выполнения с байт-кодом Dex, поэтому приложения, разработанные для Dalvik, должны работать при работе с ART.
- Кодовая линия
- Кодовая строка содержит выпуск программного продукта. Он состоит из одной или нескольких веток из одного или нескольких репозиториев, которые часто одновременно находятся в активной разработке. Кодовая линия — это точка агрегации и цель релиза. Дополнительные сведения о кодовых строках см. в разделе Управление программным обеспечением Android .
- .dex-файл
- Скомпилированный файл кода Android-приложения.
Программы для Android скомпилированы в файлы .dex (Dalvik Executable), которые, в свою очередь, заархивированы в один файл .apk на устройстве. Файлы .dex можно создавать путем автоматического перевода скомпилированных приложений, написанных на языке программирования Java.
Контрольная работа
- Артефакты
- Артефакты — это журналы сборки, позволяющие локально устранять неполадки. Эти журналы доступны непосредственно из Gerrit при просмотре списка изменений. Прокрутите вниз до Presubmit Status и щелкните красную ссылку Build , чтобы просмотреть или загрузить связанный файл
build_error.log
. Вы также можете получить эти артефакты с центрального сервера непрерывной интеграции Android по адресу ci.android.com/ , щелкнув значок «Загрузить» (стрелка вниз) для цели и сборки. Дополнительные сведения о поиске артефактов см. в разделе Непрерывная интеграция Android . - CDD
- Документ определения совместимости с Android (CDD) перечисляет требования, которые должны быть выполнены, чтобы ваши устройства были совместимы с последней версией Android. Чтобы считаться совместимыми с Android, реализации устройств ДОЛЖНЫ соответствовать требованиям, представленным в этом определении совместимости, включая любые документы, включенные посредством ссылки. Дополнительные сведения о CDD см. в документе определения совместимости с Android .
- КТС
- Набор тестов совместимости (CTS) — это набор тестов для проверки правильности API и спецификации, изложенной в CDD. Он доступен в виде исходного кода в AOSP и для загрузки в виде двоичного файла. Дополнительные сведения см. в разделе Комплект тестов совместимости .
- Верификатор CTS
- Средство проверки набора тестов совместимости (CTS Verifier) является дополнением к CTS. CTS Verifier предоставляет тесты для API и функций, которые невозможно протестировать на стационарном устройстве без ручного ввода (например, качество звука, акселерометр и т. д.). Дополнительные сведения см. в разделе Использование CTS Verifier .
- Отладка
- Отладка требует поиска и исправления ошибок в коде платформы Android либо в функциях, либо в их тестах. Дополнительные сведения см. в разделе Отладка собственного кода платформы Android .
- GoogleTest (ГТест)
- GTest — это платформа Google для тестирования и имитации C++. Двоичные файлы GTest обычно обращаются к уровням абстракции более низкого уровня или выполняют необработанный IPC для различных системных служб. Из-за этого подход к тестированию Gtest обычно тесно связан с тестируемой службой. Найдите код на github.com/google/googletest и документацию на google.github.io/googletest .
- Инструментальный тест
- Инструментальный тест предоставляет специальную среду выполнения теста, запускаемую командой
am instrument
, в которой целевой процесс приложения перезапускается и инициализируется с базовым контекстом приложения, а инструментальный поток запускается внутри виртуальной машины процесса приложения. Для получения дополнительной информации см. Инструментальные тесты . - Логкэт
- Logcat — это инструмент командной строки, который создает дамп журнала системных сообщений, включая трассировку стека, когда устройство выдает ошибку, и сообщения, которые вы написали из своего приложения с помощью класса
Log
. Дополнительные сведения см. в разделе Инструмент командной строки Logcat . - логирование
- Вход в Android сложен из-за сочетания используемых стандартов, объединенных в
logcat
. Подробнее об основных используемых стандартах см. в разделе Общие сведения о ведении журналов . - Объединить конфликт
- Конфликт слияния возникает, когда две или более версий одного и того же файла больше не могут автоматически объединяться сервером сборки Android. Обычно это требует ручного редактирования файла для разрешения всех конфликтующих обновлений.
- Тесты до и после отправки
- Предварительные тесты используются для предотвращения появления сбоев в общих ядрах. В настоящее время результаты не являются общедоступными.
Тесты после отправки Android выполняются, когда новый патч фиксируется в общей ветке ядра. Введяaosp_kernel
в качестве частичного имени ветки, вы увидите список веток ядра с доступными результатами. Например, результаты для `android-mainline` можно найти здесь . - Трейдфед
- Тестовая система Trade Federation (Tradefed или TF для краткости) — это среда непрерывного тестирования, предназначенная для запуска тестов на устройствах Android. Например, Tradefed используется для запуска CTS и VTS. Для получения дополнительной информации см. Обзор Торговой Федерации .
- СУДС
- Android Vendor Test Suite (VTS) предоставляет широкие возможности для тестирования Android, поддерживает процесс разработки, управляемый тестированием, и автоматизирует тестирование ядра HAL и ОС. Дополнительные сведения см. в разделе Vendor Test Suite (VTS) и инфраструктура .