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

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

Архитектура

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

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

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

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

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

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

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

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

Заголовок изображения загрузки

В Android 12 добавлена ​​поддержка использования заголовка образа загрузки версии 4, который является основным образом загрузки для устройств, поддерживающих архитектуру Generic Kernel Image (GKI) . Android 12 также предоставляет boot_signature для проверки целостности ядра и ramdisk. Эта проверка, выполняемая в 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 во время заводской калибровки, а также настраивать ограничения без встраивания фильтра в образ системы.

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

флеш-накопители от производителя

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

Для получения дополнительной информации см. раздел «Прошивка образов оперативной памяти производителя» на странице Fastboot в пользовательском пространстве .

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

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

Для получения более подробной информации см. раздел «Версионирование GKI» .

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

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

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

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

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

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

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

Функция HIDE_NON_SYSTEM_OVERLAY_WINDOWS(signature|privileged) устарела и заменена на HIDE_OVERLAY_WINDOWS .

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

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

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

Для получения более подробной информации см. разделы «Загрузочные разделы поставщика» и «Несколько образов оперативной памяти от разных поставщиков» .

Аудио

Маршрутизация комбинированных аудиоустройств

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

Для получения более подробной информации см. страницу «Комбинированная маршрутизация аудиоустройств» .

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

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

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

Камера

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

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

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

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

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

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

Поддержка четырехканального датчика Байера для камер

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

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

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

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

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

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

Обновления Camera ITS

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

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

Обновления CDD

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

Подключение

сегментирование сети 5G

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

Для получения более подробной информации см. раздел «Сетевое сегментирование 5G» .

Профили Companion Device Manager

Приложения, ориентированные на 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 обрабатывает сетевые запросы приложений и системы, а также на то, какая сеть по умолчанию выбирается для приложения.

Для получения более подробной информации см. раздел «Выбор сети» .

Стиль вызова уведомления

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

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

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

Обновления 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. Для работы этой функции необходимо наличие HAL-модуля Radio 1.6 .

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

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

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

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

Дополнительную информацию см. в разделе «Подготовка UICC» .

Одновременная работа точек доступа Wi-Fi

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

Для получения дополнительной информации см. раздел «Одновременное использование точек доступа Wi-Fi» .

избегание использования кооперативных каналов 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 Runtime : Обновлена ​​граница модуля.

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

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

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

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

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

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

СМИ

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

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

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

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

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

Дополнительную информацию см. в разделе «Спящий режим приложения» .

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

В Android 12 уровень абстракции групп управления (cgroup) представляет новые возможности, такие как возможность определять конкретные контроллеры 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 внесены изменения в систему сборки, касающиеся предварительной компиляции (AOT) 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:

  • Фронтенд с Tuner 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 на основе нескольких клиентов и сервера в совокупности обеспечивают безопасность на аппаратном уровне устройства.

Для получения более подробной информации см. раздел «Возобновление работы после перезагрузки» .

Воспроизведение PIN-кода SIM-карты с помощью RoR

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

Для получения дополнительной информации см. раздел «Воспроизведение SIM-PIN-кода» .

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

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

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