Примечания к выпуску Android 12 и Android 12L

На этой странице представлен обзор основных функций Android 12 и Android 12L, а также ссылки на дополнительную информацию. Обзоры функций организованы в соответствии с расположением документации по каждой функции на этом сайте.

Архитектура

Обновления класса AlwaysOnHotwordDetector

Начиная с Android 12, класс AlwaysOnHotwordDetector , включая его фабричный метод android.service.voice.VoiceInteractionService.createAlwaysOnHotwordDetector() , представляет собой системный API ( @SystemApi ), а не публичный. Класс AlwaysOnHotwordDetector предназначен для использования приложениями-помощниками с системными привилегиями, которые обычно поставляются вместе с версией ОС. В Android 11 и более ранних версиях API защищен проверками, которые гарантируют, что вызывающая сторона является текущим активным приложением-помощником, что делает API недоступным для использования сторонними приложениями.

Кроме того, в Android 12 улучшена функция звукового триггера , что позволяет улучшить атрибуцию и применение разрешений, связанных с использованием микрофона, через API звукового триггера. Использование микрофона, включая косвенное использование, например, через классы SoundTriggerManager или AlwaysOnHotwordDetector , приписывается исходному пакету (приложению Assistant), вызывающему класс AlwaysOnHotwordDetector . Это повышает конфиденциальность пользователей и прозрачность пакетов, использующих микрофон. В Android 11 и более ранних версиях использование микрофона приписывается системному пользователю, поскольку исходный пакет использует API звукового триггера не напрямую, а через службы более высокого уровня, находящиеся в процессе system_server .

Влияние этих изменений следующее:

  • Несистемные приложения, использующие класс AlwaysOnHotwordDetector не могут компилироваться с API Android 12, поскольку API был удален из общедоступной среды.
  • Существующим системным приложениям, использующим класс AlwaysOnHotwordDetector , может быть запрещено использовать функции звукового триггера во время выполнения. Чтобы решить эту проблему и разрешить этим приложениям доступ к микрофону через звуковой триггер, объявите разрешения RECORD_AUDIO и CAPTURE_AUDIO_HOTWORD для этих приложений.

Поддержка языка Android Rust

Android 12 теперь поддерживает использование кода Rust. В документацию по настройке добавлен новый раздел с рекомендациями по разработке на Android с использованием Rust.

Дополнительную информацию об Android Rust, различных модулях, а также примеры (а также информацию о настройке IDE) можно найти в новом разделе Android Rust во Введении в Android Rust .

Заголовок загрузочного образа

В Android 12 добавлено использование заголовка загрузочного образа версии 4, который является основным загрузочным образом для устройств с архитектурой Generic Kernel Image (GKI) . В Android 12 также предусмотрена функция boot_signature для проверки целостности ядра и RAM-диска. Эта проверка, выполняемая в VtsSecurityAvbTest , обязательна для устройств с архитектурой GKI.

Более подробную информацию см. на странице заголовка загрузочного образа .

Изменения в реализации bootconfig

Функция bootconfig в Android 12, представляющая собой механизм передачи данных конфигурации из сборки и загрузчика в Android 12, заменяет параметры командной строки ядра androidboot.* используемые в Android 11 и более ранних версиях. Эта функция позволяет отделить параметры конфигурации для пользовательского пространства Android от параметров для ядра.

Более подробную информацию можно найти на странице Реализация Bootconfig .

Пользовательский резервный шрифт

До Android 12 обновление файлов шрифтов, установленных на устройстве в AOSP (в разделе /system/fonts ) или разделах поставщика (в разделах /product/fonts или /system/fonts ), требовало обновления системы от OEM-производителя. Это требование существенно влияет на совместимость с эмодзи. В Android 12 для управления установленными файлами шрифтов и их обновления без обновления системы можно использовать системную службу FontManager .

Информацию об этой новой функции см. в разделе Реализация резервного копирования пользовательских шрифтов.

Кучи DMA-BUF

В Android 12 GKI 2.0 заменяет распределитель ION на кучи DMA-BUF .

Включить фильтры локали

В Android 12 появилась функция настройки системных языков по умолчанию и региональных фильтров для новых типов устройств. Это позволяет задать значение свойства фильтра и язык по умолчанию через oem/oem.prop во время заводской калибровки, а также настроить ограничения без интеграции фильтра в образ системы.

Дополнительные сведения см. в разделе Включение фильтра локали .

RAM-диски от поставщиков флэш-памяти

В Android 12 реализована поддержка прошивки RAM-дисков поставщика с помощью команды fastboot, которая извлекает полный образ vendor_boot с устройства. Эта команда побуждает инструмент fastboot на стороне хоста прочитать загрузочный заголовок поставщика, создать новый образ и прошить новый образ. Эта поддержка включает в себя изменения загрузчика и fastbootd для получения необходимых данных, таких как размер раздела и смещение.

Дополнительную информацию см. в разделе Перепрошивка ram-дисков поставщика на странице Fastboot в пользовательском пространстве .

Версионирование GKI

Начиная с Android 12, часть версии KMI, относящуюся к выпуску Android, можно извлечь из ядра и внедрить в манифест устройства во время сборки.

Более подробную информацию см. в разделе Управление версиями GKI .

События ММ - статистика исторической памяти

Устройства на базе Android 12 могут использовать mm_events — набор статистических данных, связанных с памятью, которые периодически собираются при её нехватке. mm_events интегрирован с механизмами трассировки perfetto и минимизирует нагрузку на производительность. Сбор статистики продолжается в течение настраиваемого периода времени, данные собираются с регулярными интервалами.

Информацию об использовании статистики mm_events см. в разделе События MM — Статистика исторической памяти .

Ограничения окна системного оповещения

Чтобы повысить безопасность экосистемы Android, в Android 12 усложнено получение разрешения SYSTEM_ALERT_WINDOW и разрешено сторонним приложениям блокировать наложения других сторонних приложений.

Предустановленным приложениям разрешение SYSTEM_ALERT_WINDOW не предоставляется автоматически в Android 12. Для использования предустановленным приложением оно должно быть явно предоставлено пользователем. Системные приложения по-прежнему получают это разрешение по умолчанию.

Сторонние приложения могут отказаться от отображения поверх них оверлеев. Это обеспечивает механизм защиты от атак в стиле cloak and dagger . Эта функция доступна всем приложениям, чтобы приложения, чувствительные к безопасности, такие как банковские приложения, могли защитить себя. Для использования этой функции приложение должно объявить разрешение HIDE_OVERLAY_WINDOWS в своём манифесте.

HIDE_NON_SYSTEM_OVERLAY_WINDOWS(signature|privileged) устарело в пользу HIDE_OVERLAY_WINDOWS .

Изменения в загрузочных разделах поставщика

Устройства Android 12, использующие заголовок загрузочного образа версии 4, поддерживают несколько виртуальных дисков вендора в разделе vendor_boot . Эти фрагменты виртуального диска последовательно объединяются в разделе виртуального диска вендора. Таблица виртуального диска вендора описывает структуру раздела виртуального диска вендора и метаданные каждого фрагмента виртуального диска вендора.

В связи с изменениями в загрузочных разделах вендора в Android 12 и более поздних версиях, имя default нельзя использовать для фрагмента RAM-диска вендора; оно зарезервировано. Использование этого имени для фрагментов RAM-диска вендора не допускается ни при каких обстоятельствах.

Более подробную информацию см. в разделах Загрузочные разделы поставщиков и RAM-диски нескольких поставщиков .

Аудио

Комбинированная маршрутизация аудиоустройств

Функция комбинированной маршрутизации аудиоустройств добавляет поддержку потоковой передачи звука на несколько аудиоустройств одновременно. Используя эту функцию, привилегированные приложения могут выбирать несколько предпочтительных устройств для определённой стратегии через системные API. Приложения могут более точно определять возможности аудиоустройств, используя общедоступные API, предоставляемые этой функцией.

Более подробную информацию см. на странице Комбинированная маршрутизация аудиоустройств .

Обновления Audio HAL V7

Для решения проблем обратной совместимости стабильная версия AIDL станет обязательной для всех изменений HAL, начиная с Android 13. Чтобы подготовиться к будущему внедрению AIDL и улучшить его, в версию 7 Audio HAL в Android 12 внесены значительные изменения.

Дополнительные сведения см. в разделе «Обновления Audio HAL V7» и в примере политики аудио .

Камера

Ввод статических метаданных камеры для складных устройств

В Android 12 представлена ​​запись статических метаданных камеры deviceStateOrientationMap , которая позволяет HAL-уровню камеры информировать клиент камеры и фреймворк камеры об изменениях ориентации сенсора, вызванных изменением состояния сгиба устройства. Складные устройства могут опционально использовать одну или несколько логических камер, состоящих из физических устройств с разной ориентацией сенсора для разных состояний сгиба устройства. Запись метаданных deviceStateOrientationMap позволяет фреймворку камеры гарантировать применение необходимых преобразований выходной поверхности при изменении активного физического идентификатора в результатах съёмки.

Более подробную информацию см. в metadata_definitions.xml .

Требование поддержки расширения поставщика CameraX

В Android 12 устройства, поддерживающие расширения CameraX, должны иметь свойство ro.camerax.extensions.enabled , установленное в true , что позволяет запрашивать, поддерживает ли устройство расширения.

Дополнительные сведения см. в разделе Настройка библиотеки поставщика на устройстве .

Поддержка четырех датчиков камеры Bayer

В Android 12 представлены платформенные API, позволяющие приложениям использовать возможности устройств с сенсорами камер сверхвысокого разрешения, как правило, с четверным или девятикратным фильтром Байера, которые обеспечивают гибкость в плане качества изображения и производительности при слабом освещении. Новые API поддерживают работу этих сенсоров с учетом того, что они могут поддерживать различные конфигурации и комбинации потоков при работе в режиме «максимального разрешения» вместо режима «по умолчанию».

Чтобы реализовать поддержку HAL для датчиков камер сверхвысокого разрешения, производители устройств должны внести изменения в следующие файлы:

Совместимость

Требование поддержки ADN для SIM-карт

Начиная с Android 12, все SIM-карты в устройствах, используемых для тестирования CTS, должны поддерживать сохранение сокращенных номеров набора (ADN).

Более подробную информацию см. в разделе Экран и хранилище .

Обновления ITS камеры

В Android 12 представлены различные обновления набора тестов изображений с камеры (ITS), включая новые и обновленные тесты, рефакторинг на Python 3 и внедрение тестовой платформы Mobly.

Более подробную информацию см. в примечаниях к выпуску набора тестовых изображений для камеры Android 12 .

обновления CDD

Документ определения совместимости с Android 12 является продолжением предыдущих версий с обновлениями для новых функций и изменениями требований для ранее выпущенных функций.

Связность

Нарезка сети 5G

Android 12 поддерживает сегментацию сетей 5G — использование виртуализации сетей для разделения отдельных сетевых подключений на несколько отдельных виртуальных соединений, предоставляющих разный объём ресурсов для разных типов трафика. Это позволяет операторам связи выделять часть сети для предоставления определённых функций определённому сегменту клиентов.

Более подробную информацию можно найти в разделе «Разделение сетей 5G» .

Профили диспетчера сопутствующих устройств

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

Скриншот телефона с предложением предоставить разрешения

Пакетные разрешения предоставляются сопутствующему приложению после подключения устройства и действуют только пока устройство ассоциировано. Удаление приложения или отмена ассоциации приводит к удалению разрешений.

Более подробную информацию см. в разделе Профили сопутствующих устройств .

Право на услугу IMS (TS.43)

Android 12 включает поддержку TS.43 Service Entitlement Configuration — спецификации GSMA, которая определяет этап проверки прав на активацию таких услуг, как Voice-over-Wi-Fi (VoWiFi), Voice-over-LTE (VoLTE), SMS over IP (SMSoIP), On-Device Service Activation (ODSA) сопутствующих устройств eSIM (связанных с запрашивающим устройством) и информация о тарифном плане.

Более подробную информацию см. в разделе «Право на услуги IMS» .

Единая регистрация IMS

В Android 12 добавлена ​​поддержка единой модели регистрации для предоставления функций MMTEL и RCS. Эта модель позволяет управлять всеми функциями IMS на устройствах через единую регистрацию IMS, предоставляемую ImsService устройства. По сравнению с моделью двойной регистрации, где несколько регистраций IMS управляются на одном устройстве, единая регистрация снижает трафик в сети оператора и повышает надежность.

Более подробную информацию можно найти в разделе Единая регистрация IMS .

Определение местоположения и часового пояса

В Android 12 реализована функция определения местоположения и часового пояса — дополнительная функция автоматического определения часового пояса, которая позволяет устройствам использовать данные о своем местоположении и карте часовых поясов для определения текущего часового пояса.

Более подробную информацию см. в разделе Определение часового пояса местоположения .

рандомизация MAC

В Android 12 представлен непостоянный тип рандомизации MAC-адресов, который позволяет Android повторно рандомизировать MAC-адреса для определенных сетей в начале каждого соединения.

Для получения дополнительной информации см. Поведение рандомизации MAC .

Выбор сети

В Android 12 представлен новый механизм выбора сети с использованием класса NetworkScore . Выбор сети влияет на то, как Android обрабатывает сетевые запросы приложений и системы, а также на выбор сети по умолчанию для приложения.

Более подробную информацию см. в разделе Выбор сети .

Уведомление CallStyle

Начиная с Android 12, мы рекомендуем приложениям использовать новый стиль уведомлений CallStyle для входящих и текущих голосовых и видеозвонков. Этот стиль уведомлений включает в себя кнопки действий для ответа, отклонения и завершения телефонных звонков. Он также использует тот же ориентированный на пользователя стиль, что и в разговорах , что согласуется с его привычкой размещать уведомления о вызовах в верхней части экрана.

Чтобы приложения могли использовать стиль уведомлений CallStyle , они должны использовать либо полноэкранное намерение, либо службу переднего плана (с соответствующим разрешением). Этот стиль ранжирует уведомления о вызовах в верхней части панели. Для текущих вызовов этот стиль добавляет чип в строку состояния, позволяя пользователям быстро вернуться к вызывающему приложению.

Более подробную информацию смотрите в разделе Уведомления о вызовах .

Обновления Passpoint

В Android 12 представлен Passpoint R3 и другие функции Passpoint, такие как положения и условия, URL-адреса с информацией о местах проведения мероприятий, декорированные префиксы идентификации и обработка предстоящей деаутентификации.

Более подробную информацию об этих функциях можно найти в разделе Passpoint (Hotspot 2.0) .

Обновления кошелька быстрого доступа

В Android 12 и более поздних версиях функция быстрого доступа к кошельку доступна из шторки, а не из меню питания, как в Android 11. Пользовательский интерфейс кошелька теперь работает в системном пользовательском интерфейсе и находится в frameworks/base/packages/SystemUI/src/com/android/systemui/wallet .

Более подробную информацию можно найти в разделе Быстрый доступ к кошельку .

Упрощенный пользовательский интерфейс подключения

Android 12 предлагает дополнительный упрощенный интерфейс подключения, который помогает пользователям лучше понимать свои сетевые подключения, переключаться между интернет-провайдерами и устранять неполадки сетевого подключения.

Для получения дополнительной информации см. Интерфейс подключения пользователя .

Приоритет источника времени

Начиная с Android 12, фреймворк по умолчанию отдает приоритет источнику времени Network Time Protocol (NTP) над источником Network Identity and Time Zone (NITZ).

Подробную информацию о настройке и тестировании приоритета источника времени на вашем устройстве см. в разделе Приоритет источника времени .

Переключите, чтобы отключить 2G

Для повышения безопасности в Android 12 в настройках появился переключатель 2G, позволяющий полностью отключить сотовые соединения 2G. Для этой функции требуется поддержка радио 1.6 HAL .

Функция переключения 2G включена по умолчанию. Операторы могут отключить её во время работы сети с помощью флага CarrierConfig KEY_HIDE_ENABLE_2G .

Производители устройств должны обеспечить доступность всех сетей во время экстренных вызовов.

Спецификации UICC

В Android 12 для запуска тестов API оператора CTS устройство должно использовать UICC-карту разработчика с привилегиями оператора CTS, соответствующую требованиям, указанным в последней версии спецификации стороннего тестового профиля GSMA TS.48.

Более подробную информацию см. в разделе Подготовка карты UICC .

Параллелизм точек доступа Wi-Fi/AP

В Android 12 реализована функция одновременного использования точек доступа Wi-Fi AP/AP, которая позволяет устройствам создавать мостовую двойную (AP+AP) точку доступа.

Для получения дополнительной информации см. раздел Параллелизм точек доступа Wi-Fi/AP .

Избегание каналов Wi-Fi/сотовой связи

В Android 12 представлена ​​функция предотвращения использования каналов Wi-Fi/сотовой связи , которая выявляет и предотвращает использование небезопасных каналов Wi-Fi при наличии помех между каналами сотовой связи. Это относится к таким интерфейсам, как STA, SoftAp, Wi-Fi Direct (P2P) и Wi-Fi Aware (NAN).

Улучшения протокола безопасности Wi-Fi

В Android 12 реализована поддержка WPA3 Hash-to-Element (H2E), режима перехода WPA2/WPA3-Enterprise и индикации отключения перехода.

Более подробную информацию см. в разделах WPA3 и Wi-Fi Enhanced Open .

Параллелизм Wi-Fi STA/STA

В Android 12 представлена ​​функция параллельного подключения Wi-Fi STA/STA, которая позволяет устройствам подключаться к двум сетям Wi-Fi одновременно.

Для получения дополнительной информации см. раздел Параллелизм Wi-Fi STA/STA .

Устройства

Новые автомобильные функции Android 12

Подробнее об этих новых функциях можно узнать в разделе «Новости автомобильной отрасли» :

Отображать

Блокировать ненадежные касания

Для обеспечения безопасности системы и удобства пользователя в Android 12 добавлена ​​поддержка блокировки ненадёжных сенсорных событий . Это предотвращает использование приложениями сенсорных событий , когда наложение закрывает приложение небезопасным образом.

Уведомления о разговорах и виджеты

В Android 11 появилась поддержка настройки поведения и расположения уведомлений о разговорах на панели уведомлений в зависимости от приоритета и уровня оповещения, что позволяет отмечать разговоры как важные и создавать специальные всплывающие подсказки в области разговоров. Развиваясь на основе этих функций Android 11, функция «Виджет разговора» в Android 12 позволяет пользователям добавлять виджеты разговоров для важных контактов на главный экран, что позволяет легко возобновлять разговоры, не дожидаясь уведомления.

Дополнительную информацию см. в разделе Уведомления и виджеты бесед .

Размытость окон

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

Дополнительную информацию об этой новой функции и о том, как ее реализовать, можно найти на странице Размытие окон .

Увеличение окна

В Android 12 пользователи со слабым зрением могут увеличивать любой объект на экране с помощью функции увеличения окна. Функция увеличения окна позволяет увеличивать выбранную часть экрана, в отличие от функции масштабирования всего экрана. Выбранное окно можно перетаскивать по всему экрану, что позволяет увеличивать различные его части по мере необходимости.

Для получения более подробной информации см. раздел Оконная лупа .

Предприятие

Обновления администрирования устройств

Android 12 включает в себя следующие обновления администрирования устройств:

  • Обновления для разделения данных управляемого профиля. На персональных устройствах с рабочим профилем Android 12 закрывает доступ к идентификаторам оборудования (IMEI, MEID, серийный номер) и предоставляет уникальный идентификатор, специфичный для регистрации, который идентифицирует регистрацию рабочего профиля для конкретной организации. Подробнее см. в разделе Идентификаторы устройств .

  • Обновления процесса подготовки устройств. В Android 12 внесено несколько изменений в процесс подготовки устройств. Подробности и список изменений см. в разделе «Обновления Android 12» .

Графика

Обработка горячего подключения в Composer HAL

Возможности отображения (такие как режимы отображения и поддерживаемые типы HDR) могут динамически изменяться на устройствах с внешним подключением дисплеев (через HDMI или DisplayPort), таких как телевизионные приставки Android TV (STB) и устройства с поддержкой технологии OTT. Начиная с Android 12, изменения в фреймворке поддерживают горячее подключение и динамические возможности отображения.

Для получения дополнительной информации см. раздел Обработка горячего подключения в Composer HAL .

Компоненты модульной системы

Android 13 содержит несколько новых и обновлённых модульных системных компонентов. Новые модули:

  • ART : Этот модуль направлен на улучшение опыта использования Android, предлагая пользователям новейшие оптимизации управляемой среды выполнения, функции и исправления ошибок.

  • Планирование устройств : этот модуль содержит логику, которая определяет, находится ли устройство в состоянии ожидания, и может быть перезагружен без прерывания работы пользователя.

Обновления существующих модулей:

  • adbd : Обновлена ​​граница модуля.

  • DocumentsUI : Отключен просмотр файлов.

  • ExtServices : добавлен DisplayHashingService и обновлена ​​граница модуля.

  • Медиа : добавлен новый компонент медиа.

  • Среда выполнения NNAPI : обновлена ​​граница модуля.

  • PermissionController : Модуль PermissionController сделан полностью модульным, а также обновлены границы модуля.

  • Расширения SDK : обновлена ​​ответственность модуля и добавлен новый компонент.

  • Statsd : Обновлена ​​граница модуля.

  • Привязка : добавлена ​​функциональность, обновлена ​​граница модуля.

  • Данные о часовом поясе : обновлен формат пакета.

  • Wi-Fi : обновлена ​​граница модуля.

СМИ

Совместимое перекодирование медиа

Совместимое перекодирование медиаданных позволяет устройствам использовать современные, экономичные форматы видео, такие как HEVC, для захвата видео, сохраняя при этом совместимость с приложениями. Благодаря этой функции производители устройств могут использовать HEVC вместо AVC по умолчанию, чтобы улучшить качество видео и снизить требования к объёму хранилища и пропускной способности. Подробнее см. в разделе «Совместимое перекодирование медиаданных» .

Производительность

спящий режим приложения

Android 12 предлагает возможность переводить в спящий режим приложения, которые пользователь не использует в течение нескольких месяцев, по аналогии с автоматическим отзывом разрешений.

Более подробную информацию см. в разделе Спящий режим приложений .

Уровень абстракции Cgroup

Уровень абстракции контрольной группы (cgroup) в Android 12 представляет новые функции, такие как возможность определять определённые контроллеры cgroup как необязательные и использовать новую команду task_profiles , которая заменяет устаревшую команду writepid . Эта замена гарантирует, что базовые реализации cgroup не будут влиять на верхние уровни при миграции задач в иерархиях cgroup. В Android 12 также появилась поддержка профилей задач на уровне API.

Для получения дополнительной информации см. раздел Уровень абстракции Cgroup .

Разрешения

Разрешения Bluetooth

В Android 12 представлены следующие разрешения Bluetooth, которые заменяют разрешения BLUETOOTH и BLUETOOTH_ADMIN :

  • BLUETOOTH_SCAN : позволяет приложениям обнаруживать и подключать ближайшие устройства Bluetooth.
  • BLUETOOTH_ADVERTISE : позволяет приложениям рекламировать свои продукты на ближайших устройствах Bluetooth.
  • BLUETOOTH_CONNECT : позволяет приложениям подключаться к сопряженным устройствам Bluetooth.

Эти разрешения являются частью новой группы разрешений среды выполнения NEARBY_DEVICES . Эта группа разрешений позволяет использовать такие сценарии, как подключение к умным часам, без необходимости разрешения среды выполнения LOCATION .

Эти новые разрешения совместимы с приложениями, и для приложений, работающих на Android 11 и более ранних версиях, никаких изменений не требуется. Для устаревших приложений, предназначенных для Android 11 и более ранних версий, платформа автоматически преобразует запросы на устаревшие разрешения Bluetooth в запросы на новые разрешения. При обновлении приложения до Android 12 и более поздних версий оно должно явно запрашивать новые разрешения Bluetooth.

Более подробную информацию об использовании разрешений см. в разделе Разрешения Bluetooth .

Индикаторы конфиденциальности

Android 12 обеспечивает пользователям прозрачность, отображая индикаторы, когда приложение использует частный источник данных через разрешения на использование камер и микрофона.

App Ops отслеживает как статус активности, так и количество отдельных вызовов API, взаимодействуя с индикаторами микрофона и камеры в Android 12, чтобы показывать пользователям, когда приложения обращаются к аудиоданным и данным камеры на их устройствах. Нажимая на индикаторы микрофона или камеры, пользователи видят, какие приложения обращались к их данным.

Эта функция обязательна для всех OEM-производителей . Подробнее см. в разделе «Индикаторы конфиденциальности» .

Расположение

Начиная с Android 12 пользователи могут запросить, чтобы приложение получало только приблизительную точность при доступе к информации о местоположении.

Это изменение затронет только приложения, предназначенные для Android 12 и более поздних версий. Однако на устройствах с более старой версией модуля PermissionController это изменение затронет все приложения, независимо от целевой версии SDK.

Время выполнения

Проверки Dexpreopt и <uses-library>

В Android 12 внесены изменения в систему сборки, связанные с предварительной компиляцией DEX-файлов (dexpreopt) для модулей Java, имеющих зависимости <uses-library> . В некоторых случаях эти изменения могут привести к сбоям в сборке.

Информацию о том, как подготовиться к поломкам, а также рецепты по их устранению и смягчению последствий см. в разделах Dexpreopt и <uses-library> Checks .

Тесты

Набор тестов совместимости (CTS)

В Android 12 представлено множество новых ключевых модулей и изменений в тестах для CTS. Подробнее см. в примечаниях к выпуску CTS .

ТВ

Служба управления HDMI-CEC

Android 12 использует HDMI-CEC для автоматического управления дисплеями, подключенными через HDMI, когда устройство выходит из спящего режима или переходит в спящий режим.

Более подробную информацию см. в разделе Служба управления HDMI-CEC .

Фреймворк тюнера

В Android 12:

  • Интерфейс с тюнером HAL 1.1 или выше поддерживает стандарт DTMB DTV. Поддерживаются следующие возможности и настройки интерфейса:

    • DtmbFrontendCapabilities

    • DtmbFrontendSettings

  • API Tuner SDK поддерживает новые функции в Tuner HAL 1.1, который является обратно совместимой версией обновления Tuner 1.0.

  • android.media.tv.tuner.TunerVersionChecker.getTunerVersion() проверяет текущую версию HAL.

Обновления

компрессия APEX

После установки обновления контейнера Android Pony EXpress (APEX) его предустановленная версия больше не используется, но занимает тот же объём памяти. Занятое пространство остаётся недоступным. В Android 12 сжатие APEX минимизирует это воздействие на хранилище, используя набор файлов APEX с высокой степенью сжатия в разделах, доступных только для чтения (например, в разделе /system ). Подробнее о сжатии APEX в Android 12 см. в разделе Сжатые APEX -файлы.

Безопасность и удобство возобновления работы после перезагрузки

В Android 12 реализована улучшенная поддержка многопользовательского режима и функция перезагрузки на базе сервера. Процесс возобновления работы при перезагрузке (RoR) обеспечивает дополнительную безопасность и удобство для пользователей, поскольку обновления OTA могут устанавливаться во время простоя устройства, а многопользовательская поддержка и функции обновления на базе сервера в Android 12 в совокупности обеспечивают безопасность на аппаратном уровне устройства.

Для получения более подробной информации см. раздел Resume-on-Reboot .

Повтор PIN-кода SIM-карты с помощью RoR

В Android 12 реализована функция повторного воспроизведения PIN-кода SIM-карты для бесперебойной проверки PIN-кода после перезагрузки, инициированной RoR. PIN-код SIM-карты повторно шифруется и сохраняется каждый раз, когда пользователь успешно включает, проверяет или изменяет его.

Для получения более подробной информации см. раздел Повтор SIM-PIN .

Виртуальные обновления A/B

В Android 12 доступна функция виртуального сжатия A/B для разделов, созданных с помощью снимков. В Android 12 обновляемые разделы, которые не используются загрузчиком, можно создавать с помощью снимков для экономии места. Их также можно сжимать. Включение сжатия снимков в вашей сборке для Android 12 экономит место на разделе /data .

Реализация Virtual A/B со сжатием снимков требует внесения изменений в код, специфичный для конкретного устройства. Изменения и подробности реализации см. на страницах «Обзор Virtual A/B» и «Реализация Virtual A/B» .