Перейти к основному контенту
Документы
Что нового?
Примечания к выпускам
Последние бюллетени по безопасности
Последний документ определения совместимости (CDD)
Обновления сайта
Начало работы
О сервисе
Начинать
Скачать
Строить
Тестировать
Создавать
Способствовать
Сообщество
Инструменты, сборка и связанные с ними ссылки
Безопасность
Обзор
Бюллетени
Функции
Тестирование
Рекомендации
Основные темы
Архитектура
Аудио
Камера
Возможности подключения
Данные
Отображать
Шрифты
Графика
Взаимодействие
СМИ
Эффективность
Разрешения
Власть
Runtime
Настройки
Storage
Тестирование
Обновления
Виртуализация
Совместимость
Документ определения совместимости (CDD)
Набор тестов совместимости (CTS)
Android-устройства
Каракатица
Предприятие
ТВ
Автомобильный
Начать
Рекомендации по развитию
Инструменты разработки
Инструменты и инфраструктура тестирования
Сведения о выпуске
Справочные материалы
HIDL
ХАЛ
Торговая Федерация
Набор тестов безопасности
Поиск кода Android
/
English
Deutsch
Español – América Latina
Français
Indonesia
Italiano
Polski
Português – Brasil
Tiếng Việt
Türkçe
Русский
עברית
العربيّة
فارسی
हिंदी
বাংলা
ภาษาไทย
中文 – 简体
中文 – 繁體
日本語
한국어
Войти
Документация
Что нового?
Начало работы
Безопасность
Основные темы
Совместимость
Android-устройства
Автомобильный
Справочные материалы
Документы
Ещё
Что нового?
Начало работы
Безопасность
Основные темы
Совместимость
Android-устройства
Автомобильный
Справочные материалы
Поиск кода Android
Обзор
Архитектура
Обзор
Уровень аппаратной абстракции (HAL)
Обзор
HIDL (устарело)
Обзор
Интерфейсы и пакеты
Хеширование интерфейса
Услуги и передача данных
Быстрая очередь сообщений
Используйте Binder IPC
Использовать блок памяти
Инструменты настройки сетевого стека
Модель резьбы
Преобразование модулей HAL
Типы данных
Безопасный союз
Управление версиями интерфейса
Руководство по стилю кода
HIDL С++
Обзор
Пакеты
Интерфейсы
Типы данных
Функции
HIDL Java
Обзор
Типы данных
Методы интерфейса и ошибки
Экспортировать константы
Другое
Проверка обратной совместимости HIDL-фреймворка
Динамически доступные HAL
Устаревшие HAL (AOSP <= v7)
Ядро
Обзор
Примечания к выпуску ядра
Стабильные выпуски и обновления ядра
Общие ядра Android
проект ГКИ
разработка ГКИ
Схема управления версиями GKI
Сборки релизов GKI
Обзор
Сборки выпуска Android12-5.10
Релизные сборки Android13-5.10
Релизные сборки Android13-5.15
Релизные сборки android14-5.15
Релизные сборки android14-6.1
Релизные сборки Android15-6.6
сборки релиза android16-6.12
Устаревшие сборки GKI
Android12-5.10 устаревшие сборки
Android13-5.10 устаревшие сборки
Android13-5.15 устаревшие сборки
Android14-5.15 устаревшие сборки
устаревшие сборки android14-6.1
Android15-6.6 устаревшие сборки
android16-6.12 устаревшие сборки
Процесс выпуска GKI
GKI 16-6.12 — основные ошибки для Android
Поддерживать стабильный KMI
Мониторинг ядра ABI
Обзор
Запустите мониторинг ABI
Работа со списками символов
Модули
Обзор
Настройте функции ядра как модули GKI
Рекомендации по модулю поставщиков
Загружаемые модули ядра
Поддержка модуля ядра
Тестовые модули GKI
Оптимизация времени загрузки
Функции отладки
Разработать код ядра для GKI
Поддержка файловой системы ядра Android
Расширьте ядро с помощью eBPF
Используйте DebugFS в Android 12
Криптомодуль GKI, сертифицированный по стандарту FIPS 140-3.
ЭРОФС
Часто задаваемые вопросы по ядру Android
Сетевые модульные тесты ядра
Переход от ION к кучам DMA-BUF (ядро 5.4)
Инкрементная файловая система
Конфигурация
Обзор
Реализуйте системные свойства как API.
Добавить свойства системы
Внедрить API схемы файла конфигурации
Отправить в архив
Обзор
ConfigStore
Создайте интерфейс HAL
Внедрить услугу
Использование на стороне клиента
Добавьте классы и элементы ConfigStore.
Наложения дерева устройств
Обзор
Реализация DTO
Синтаксис DTO
Скомпилируйте и проверьте
Используйте несколько ОУ
Перегородки DTB и DTBO
Оптимизировать DTO
NDK поставщика (<=AOSP 14)
Обзор
Включить ВНДК
Поддержка системы сборки VNDK
Расширения ВНДК
Дизайн снимка ВНДК
Создание снимков VNDK
Создание снимков поставщиков
Пространство имен компоновщика
Каталоги, правила и политика конфиденциальности
Рендерскрипт
стабильность ЛПИ
Встроенная проверка использования ABI
Объект интерфейса поставщика
Обзор
Манифесты
Матрицы совместимости
Жизненный цикл FCM
Разработка манифеста устройства
Правила матча
Дополнительные ресурсы
АИДЛ
Обзор
язык AIDL
Серверные части AIDL
Стабильный AIDL
AIDL для HAL
Динамический запуск служб AIDL
Аннотации в AIDL
FMQ с AIDL
AIDL-фаззинг
Руководство по стилю AIDL
Межпроцессное взаимодействие с Binder
Обзор
Ручка нитей
Приоритетное наследование
загрузчик
Обзор
Каноническая причина загрузки
Заголовок загрузочного образа
Реализовать загрузочную конфигурацию
Образы для восстановления
Изображения DTB
Внедрение OTA-обновлений
Блокировка и разблокировка загрузчика
Информация о версии в свойствах AVB
Переместить fastboot в пространство пользователя
Общий загрузчик
Обзор
Развернуть ГБЛ
Перегородки
Обзор
Расположение разделов
Загрузочные разделы производителя
Разделы Vendor и ODM DLKM
Общий образ системы Android
Разделы Рамдиска
Общий загрузочный раздел
ODM-разделы
Разделы продукта
Реализация раздела модуля GKI
Обеспечьте соблюдение интерфейсов разделов продуктов
Надежные разделы ОС
Размер страницы 16 КБ
Обзор
Используйте Cuttlefish с размером страницы 16 КБ на ARM64.
Имитация каракатицы с размером страницы 16 КБ на x86-64
Сборка и прошивка устройств Pixel 8 с поддержкой 16 КБ.
Flash Pixel с поддержкой размера страницы 16 КБ
Получить размер страницы
Оптимизация производительности для режима 16 КБ
16 КБ системные свойства
Включить переключатель 16 КБ
Включить опцию обратной совместимости 16 КБ
Уровень API поставщика
Аудио
Обзор
Терминология
Реализация
Аудио ХАЛ
AIDL Аудио HAL
Поддержка настраиваемой политики аудио в AIDL HAL
Сравнение AIDL и HIDL Audio HAL
HIDL
HIDL Аудио HAL
Настройка политик аудио
Настройка общей библиотеки
Настройка эффектов предварительной обработки
Форматы данных
Атрибуты
Последствия
Аудио высокого разрешения
Ограничение по типу устройства
AAudio и MMAP
Аудио разминка
Задержка
Обзор
Авторы
Дизайн для уменьшения задержки
Измерьте задержку звука
Аудио петлевой ключ
Измерения
Для разработчиков приложений
Избегайте инверсии приоритетов
Преобразование частоты дискретизации
Отладка
МИДИ
Обзор
MIDI-архитектура
Процедура тестирования MIDI
USB
USB цифровое аудио
Предпочтительные атрибуты микшера на USB-устройствах
ТВ аудио
Параллельный захват
Звуковой триггер
Комбинированная маршрутизация аудиоустройств
Пространственный звук
Пространственный звук и отслеживание головы
Реализация
Отслеживание головы через звук LE
Звуковая доза
Динамический режим звуковой панели
Камера
Обзор
Архитектура
Камера HAL
Подсистема HAL
Основные понятия
Режимы 3А и переход состояний
Отладка камеры
Обработка ошибок и потоков
Метаданные и элементы управления
Выходные потоки, обрезка и масштабирование
Создание и отправка запроса
Конфигурации потоков
Эффективность
API управления буфером камеры HAL3
Параметры сеанса
Один производитель, несколько потребителей
Особенности камеры
10-битный выход камеры
Боке камеры
Одновременная потоковая передача с камеры
Расширения камеры
Инструмент проверки расширений камеры
Стабилизация предпросмотра камеры
Внешние USB-камеры
Режимы расширенного динамического диапазона
HEIF-визуализация
Монохромные камеры
Отслеживание движения
Поддержка нескольких камер
Системные камеры
Контроль мощности факела
Ультра HDR
Используйте устройство в качестве веб-камеры
Захват широкой гаммы
Управление версиями
Поддержка версий камеры
Возможности подключения
Обзор
Bluetooth
Обзор
Bluetooth-сервисы
Bluetooth с низким энергопотреблением
Аудиоподдержка слухового аппарата с использованием BLE
BLE-реклама
Проверка и отладка
Требования HCI
Калибровка присутствия
Идентификация ОС Android
NFC
Эмуляция хост-карты FeliCa
Выносная синхронизация платежей NFC
Безопасный NFC
Кошелек быстрого доступа
Собственные команды Android NCI
Звонки и обмен сообщениями
Автономный 5G (NSA)
Внедрить блокировку номера телефона
Уведомления о звонках
Сервис подбора домена
Внедрить программу экстренной помощи
База данных номеров экстренных служб Android
Номера экстренных служб и экстренный вызов
Внедрить IMS
Право на услугу IMS
Единая регистрация IMS
Предложение учетной записи телефона
Внедрить RTT
Поддержка сторонних приложений для звонков
Визуальная голосовая почта
Перевозчик
Обзор
Нарезка сети 5G
APN и CarrierConfig
Идентификация перевозчика
Реализовать планы данных
Идентификаторы устройств
eSIM
Внедрить eSIM
Требования к модему для поддержки eSIM
eUICC API
Несколько включенных профилей
Обработка ошибок API eUICC
Загружаемые тестовые профили
Интеграция оператора передачи eSIM
Улучшите взаимодействие с пользователем VPN
Поддержка сети с несколькими операторами
Настройте поведение устройства для пользователей, находящихся в дисбалансе
Рефакторинг RIL
Поддержка малых сот
Привилегии оператора UICC
Время
Обзор
Определение часового пояса местоположения
Определение часового пояса телефонии
Определение времени сети
Определение времени GNSS
Внешнее определение времени
Приоритет источника времени
Политика и рекомендации по часовым поясам
Правила часового пояса
Ультраширокополосный
Обзор
СШП HAL-интерфейс
Wi-Fi
Обзор
Wi-Fi HAL
Возможности инфраструктуры Wi-Fi
Тестирование, отладка и настройка Wi-Fi
Фильтр пакетов Android
Оператор Wi-Fi
Поведение рандомизации MAC
Внедрить рандомизацию MAC
Точка доступа (точка доступа 2.0)
Параллелизм Wi-Fi STA/AP
Параллелизм Wi-Fi STA/STA
Доверие при первом использовании (TOFU)
Поддержка Wi-Fi
Избегание совместного канала Wi-Fi/сотовой связи
Wi-Fi Прямой
Wi-Fi Легкое подключение
Точка доступа Wi-Fi (программная точка доступа)
Параллелизм точек доступа Wi-Fi и точек доступа
Режим Wi-Fi с низкой задержкой
Выбор сети Wi-Fi
Сканирование разгрузки предпочтительной сети Wi-Fi
Время приема-передачи Wi-Fi (RTT)
WPA3 и расширенные возможности Wi-Fi Открыть
Wi-Fi 7
Профили сопутствующих устройств
API диагностики подключения
Пользовательский интерфейс подключения
Выбор сети
Ранжирование: последовательность внеполосных сообщений и спецификация полезной нагрузки
Отчет о силе сигнала
Данные
Обзор
Объяснение тегов использования данных
Режим экономии данных
Мониторинг трафика eBPF
Исключить типы сетей из данных об использовании
Обзор статистики сетевого интерфейса
Привязка данных
Разгрузка оборудования привязки
Даты сброса цикла использования
Обзор ядра
Изменения ядра
Отображать
Обзор
Приложения
Внедрить адаптивные значки
Ярлыки приложений
Реализация круглых значков
Уведомления о беседах и виджеты
Размытие окна
Виджеты и ярлыки
Реализация синхронизированных переходов приложений
Цвет
Управление цветом
Вырезы дисплея
Не беспокойте
Воспроизведение HDR-видео
Внедрить ночник
Отображение тона яркости HDR в диапазон, совместимый с SDR
Материал, который вы проектируете
Динамический цвет
Мульти окно
Обзор
Возможности оконного дизайна рабочего стола
Взаимодействие с разделенным экраном
Картинка в картинке
Увеличение окна
Мульти-дисплей
Обзор
Рекомендации
Среда тестирования и разработки
Часто задаваемые вопросы
Мульти-резюме
Политика запуска активности
Поддержка дисплея
Поддержка системных украшений
Экран блокировки
Поддержка редактора метода ввода
Входная маршрутизация
Многозонный звук
Уведомления
История уведомлений
Разрешение на уведомления о согласии
Диспетчер задач
Розничный демонстрационный режим
Чередовать предложения
Реализация классификатора текста
Смешанная композиция SDR и HDR
Элементы управления мультимедиа в пользовательском интерфейсе системы
Расширения оконного менеджера
Шрифты
Реализация резервного варианта пользовательского шрифта
Графика
Обзор
Архитектура
BufferQueue и Gralloc
Реализация учета DMABUF и памяти графического процессора.
Отслеживание переходов окон с помощью Winscope
Обзор
Запустить Winscope
Захват следов
Обзор
ViewCapture в системных приложениях
На устройстве
Используйте Винскоп
Используйте команды adb
Загрузить трассировки
Анализировать следы
Обзор
Навигация по временной шкале
Поиск трассировки
SurfaceFlinger
оконный менеджер
Протолог
Переходы оболочки
ПросмотрЗахват
Поверхность и держатель поверхности
Обзор
SurfaceView и GLSurfaceView
Текстура поверхности
Просмотр текстуры
SurfaceFlinger и WindowManager
Обзор
Системные свойства в SurfaceFlinger
Аппаратный композитор HAL
Обзор
Внедрить HWC HAL
Горячее подключение
AIDL для HWC HAL
Управление клиентским фреймбуфером
Уменьшите потребление графической памяти
Слои и дисплеи
Вертикальная синхронизация,Вертикальная синхронизация
Шаг кадров
Множественная частота обновления
Адаптивная частота обновления
EGLSurfaces и OpenGL ES
Обзор
Реализация OpenGL ES и EGL
Конфигурация OpenGLRenderer
Вулкан
Обзор
Внедрить Вулкан
Структура синхронизации
Тестирование
Тестирование внедрения
Интеграция с Android CTS
Тестирование программы качества drawElements
Фиксация несигнального буфера с помощью AutoSingleLayer
Добавьте новые форматы пикселей в Android
HDR на скриншотах Android
Взаимодействие
Обзор
Ввод
Обзор
Файлы макета ключей
Файлы карты ключевых персонажей
Файлы конфигурации устройств ввода
Руководство по переходу
Клавиатурные устройства
Сенсорные устройства
инструмент getevent
инструмент проверки раскладки клавиш
Тактильные
Обзор
Внедрить тактильные ощущения
Обзор
Реализация констант и примитивов
Константы сопоставления между HAL и API
Реализовать кусочно-линейные эффекты огибающей
Оцените оборудование
UX-основа для тактильной структуры
Тактильный UX-дизайн
Оценка оборудования
Обзор
Настройте испытательное оборудование
Настройте тестовое программное обеспечение
Измеряйте и записывайте целевые эффекты
Анализ формы сигнала
Сравните результаты с помощью карты производительности
Нейронные сети
Обзор
Пакетное выполнение и быстрые очереди сообщений
Кэширование компиляции
Поток управления
Обнаружение и назначение устройств
Пулы памяти
Лучшие практики реализации драйвера NNAPI
Качество обслуживания
Расширения поставщика
Периферия
Обзор
Аудио аксессуары
Обзор
3,5-мм гарнитура
Характеристики гарнитуры
Характеристики устройства с разъемом для гарнитуры
USB-гарнитура
Характеристики гарнитуры
Характеристики адаптера
Спецификация устройства
Ожидаемое поведение гарнитуры
Тестирование гарнитуры
Индивидуальные аксессуары
Обзор
Открытый аксессуар для Android
Обзор
АОА 2.0
АОА 1.0
Отключить передачу данных через USB
Стилус
Датчики
Обзор
Стек датчиков
Типы датчиков
Взаимодействие
Протокол HID трекера головы
Власть
Пакетирование
Потребляемая мощность
Режимы
Режимы отчетности
Режим ожидания
Датчики выключены
Датчики ХАЛ
Датчики AIDL HAL
Датчики Multi-HAL
Датчики HAL 2.0
Датчики HAL 1.0
Устаревшая версия HAL
Среда выполнения Context Hub
Обзор
СМИ
Обзор
Медиа модули
Модуль Медиапровайдера
Настройка медиа-компонентов
Декодирование с малой задержкой в MediaCodec
Укрепление медиа-структуры
Зависимости поставщиков SoC
OEM-зависимости
DRM
Совместимое транскодирование мультимедиа
Экспорт статистики кодирования видео
Руководство OEM по реализации рентабельности инвестиций
Эффективность
Обзор
Кэширование APK
Заморозка кэшированных приложений
Оптимизируйте время загрузки
Здоровье
Обзор
Внедрить Здоровье 2.1
Уровень абстракции Cgroup
Демон-убийца нехватки памяти
Автоматическая оптимизация на основе обратной связи (12 или выше)
Используйте оптимизацию на основе профиля
Снимки задач
Совместимость с упреждающей записью в журнал
Спящий режим приложения
Повышение производительности для игр
Статистика исторической памяти событий ММ
Получить информацию о состоянии системы
Разрешения
Обзор
Окружающие возможности
Напоминание о доступе к местоположению в фоновом режиме
Поставщик контактов и интересы
Дискреционный контроль доступа
Неизменяемые идентификаторы устройств
Пространства имен для собственных библиотек
Белый список привилегированных разрешений
Предустановленные системные пакеты
Индикаторы конфиденциальности
Общий белый список UID, подписанный платформой
Индикаторы конфиденциальности
Ограничение подходящих местоположений
Ограниченное чтение с экрана
Роли Android
Разрешения во время выполнения
Разрешенный список разрешений на подпись
Разрешения на размещение в трех штатах
Внедрить USB HAL
Потоковая передача через сопутствующее приложение
Ограничения полноэкранного намерения
Захват контента для заметок
Власть
Обзор
Управление питанием
Термическое смягчение
Характеристики мощности HAL
Управление питанием приложения
Управление питанием платформы с помощью Doze
Управление производительностью
Трекеры фонового поведения приложений
Поддержка безбатарейных устройств
Измерьте мощность компонента
Измерьте мощность устройства
Измерение значений мощности
Обычная экономия заряда батареи
ТВ в режиме ожидания
Служба SystemSuspend
Runtime
Обзор
Проверки Dexpreopt и <uses-library>
Улучшения Android 8.0 ART
Формат байт-кода Dalvik
Формат исполняемого файла Dalvik
Форматы исполняемых инструкций Dalvik
Ограничения
Конфигурация
Обзор
Конфигурация службы ART
Конфигурация менеджера пакетов (устарела)
АРТ ТИ
Реализация подписанной конфигурации
Отладка сборки мусора ART
Внедрить ART JIT-компилятор
Изменение значения ресурсов приложения во время выполнения
Устранение неполадок RRO
Профили загрузочного образа
Мягкий перезапуск (<= AOSP 14)
О зиготе
Настройки
Обзор
Рекомендации по дизайну
Выкройки и компоненты
Информационная архитектура
Персональные настройки
Универсальный поиск
Storage
Обзор
Традиционное хранение
Приемлемое хранилище
Хранилище с заданной областью
проходной FUSE
Конфигурация устройства
Примеры конфигурации
Более быстрая статистика
Прекращение поддержки SDCardFS
Тестирование
Обзор
Рабочий процесс разработки тестов
Обзор
Простая конфигурация сборки
Сложная тестовая конфигурация
Инструментальные испытания
Обзор
Пример самоинструментационных тестов
Таргетинг на пример приложения
GoogleTests (ГТестс)
Обзор
Добавить новые GTests
Метрические тесты
JAR-тесты хоста
Тестовое сопоставление
Запуск тестов с помощью Atest
Тестовая станция OmniLab Android
Гид пользователя
Виртуальные устройства в OmniLab ATS
Автоматическое включение отладки по USB для пользовательских сборок
Запуск тестов UIConductor
API
Примечания к выпускам
Часто задаваемые вопросы
Набор тестов поставщика (VTS)
Обзор
Параметризованный GTest для тестирования HAL
Испытательная установка
Общий образ системы (GSI)
Набор тестов поставщика (VTS) 10
Обзор
Видеоуроки
Тестирование систем с помощью VTS
Платформа тестирования
Команды оболочки устройства
Шаблоны тестов
Тестирование HAL с учетом имени службы
Проверка тестируемости HAL
Тестирование на нескольких устройствах
VTS с отладочным RAM-диском
Панель ВТС
Настройка
База данных
Пользовательский интерфейс
Лабораторная инфраструктура
Инфраструктура автоматизированного тестирования
Архитектура хост-контроллера
Тестирование производительности
Тестовое оборудование Торговой федерации (TF)
Начать
Обзор
Начинать
Среда разработки
Работа с устройствами
Cloud Console
Жизненный цикл тестирования
Обработка опций
Полный пример
Напишите и запустите тесты Tradefed
Обзор
Протестируйте через Tradefed
Обзор
Написать средство запуска тестов
Напишите сегментированный тест-раннер IRemoteTest
Написать управляемый хостом тест
Написать тест без устройств на стороне хоста
Отчет о показателях или данных из теста
Автоматический повтор теста
Повторить изоляцию
Автоматизированный сбор журналов при сбоях
Пробный запуск конфигурации
Запуск инструментальных тестов из APK
Написать тест оболочки
Глобальные фильтры
Протестируйте наборы
Обзор
Настройка люксов
Варианты прохождения и фильтры
Проверить состояние системы
Структура AndroidTest.xml
Настроить шардинг
Используйте контроллеры модулей
Использовать набор повторно
Модули для нескольких устройств
Разработать ТФ
Обзор
Руководство по тестированию
Настроить затмение
Включите модульные и функциональные тесты
Запустите программу проверки ошибок, подверженных ошибкам
Добавить неосновной код
Архитектура
Обзор
XML-конфигурация
Структура высокого уровня
Шаблоны и включает
Объект конфигурации
Глобальная конфигурация
Параметры файла
Варианты хоста
Расширенные концепции
Секреты хранилища ключей
Планировщик тестовых команд
Структура тест-раннера
Тестовый шардинг
Запуск тестов с несколькими устройствами
Использовать уровень сценариев
Загрузить протоколы с глобальной конфигурацией
Родное устройство
Диспетчер устройств
Состояния устройства
Распределение устройств
Обнаружение устройства
Строить
Провайдеры сборки
Информация о сборке
Настройка устройства
Приготовители мишеней
Многоцелевые препараты
Результаты
Создать отчет о результатах
Обрабатывать файлы журналов
Резюме отчета о результатах
Хранитель журнала
Показатели
Сборщик метрик на основе хоста
Сбор метрик на стороне устройства
Индекс пакета
Мультидевайсное тестирование с Mobly
Обзор
Отладка собственного кода платформы
Обзор
Читать отчеты об ошибках
Понимание ведения журнала
Реализовать ведение журнала поставщиков с ограниченной областью действия
Диагностика собственных сбоев
Оцените производительность
Обзор
Понимание системной трассы
Использовать фтрейс
Определите джек, связанный с емкостью
Выявление помех, связанных с джиттером
Реализация функции
Внедрить режим тестовой обвязки
Используйте отладчики
Отладка использования собственной памяти
Спасательный отряд
Реализация хранится
Использовать трассировку
Обновления
Обзор
АПЕКС
Формат файла АПЕКС
АПЕКС поставщика
Создание пакетов OTA
Подписать сборки для выпуска
Уменьшить размер OTA
Виртуальный А/Б
Обзор
Внедрить виртуальный A/B
Внедрение виртуальных A/B-патчей
Обновления устаревшей системы A/B
Обзор
Внедрение обновлений A/B
Часто задаваемые вопросы
(Устарело) Обновления системы, отличные от A/B
Обзор
OTA на основе блоков
Внутри OTA-пакетов
Код устройства
Динамические разделы
Обзор
Реализация динамических разделов
OTA для устройств A/B
OTA для устаревших устройств A/B
OTA для устройств, отличных от A/B
Размер суперраздела
Правила часового пояса