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

На этой странице суммируются основные функции выпуска Android 11 и приводятся ссылки на дополнительную информацию. Эти сводки функций организованы в соответствии с расположением документации функции на этом сайте.

Архитектура

API-квоты

В выпуске Android 11 представлена ​​функция квот API, которая ограничивает частоту вызовов определенных API приложениями. Она реализована только в вызовах API JobScheduler . Любые изменения, вносимые вами в предустановленные лимиты, должны пройти тестирование CTS. Вы можете отключать и включать квоты API с помощью метода setEnabled в QuotaTracker.java . По умолчанию функция включена. Отключение функции позволяет приложениям вызывать затронутые API без ограничений.

Предоставляются модульные тесты для QuotaTracker и связанных классов. Подробная документация находится в комментариях в классе QuotaTracker . Эта функция представляет новый публичный API LimitExceededException .

Загрузчик

Загрузочный заголовок версии 3

Android 11 поддерживает заголовок загрузочного образа версии 3. Подробности см. в разделе Заголовок загрузочного образа .

Разделы

Загрузочные разделы

Android 11 представляет концепцию Generic Kernel Image. Чтобы обеспечить загрузку произвольного устройства с помощью Generic Kernel Image, вся информация, специфичная для поставщика, выносится из загрузочного раздела и перемещается в раздел vendor-boot . Устройство, запускаемое с Android 11, должно поддерживать раздел vendor-boot и обновленный формат загрузочного раздела, чтобы пройти тестирование с помощью GKI.

Загрузочный заголовок поставщика

Загрузочный заголовок поставщика может содержать более одной страницы.

Обеспечение соблюдения интерфейсов разделов продукта

Android 11 разделяет раздел product , делая его независимым от разделов system и поставщика. В рамках этих изменений теперь вы можете контролировать доступ раздела продукта к собственным и Java-интерфейсам.

Восстановление изображений

Android 11 обновляет требования к образу восстановления и включает новые основанные на выпуске параметры для включения DTBO/ACPIO восстановления в качестве части образа загрузки/восстановления. Подробности см. в разделе Образы восстановления .

Мягкий перезапуск

Android 11 поддерживает мягкие перезапуски , которые представляют собой перезапуски процессов в пользовательском пространстве во время выполнения, используемые для применения обновлений, требующих перезагрузки (например, обновлений пакетов APEX).

Ядро

Распространенные ядра Android

Android 11 вносит существенные изменения в процесс разработки и интеграции общих ядер Android .

Мониторинг ABI ядра Android

В Android 11 представлен инструментарий мониторинга ABI для стабилизации внутриядерного ABI ядер Android.

Универсальный образ ядра

В Android 11 представлен Generic Kernel Image (GKI) , который решает проблему фрагментации ядра путем унификации ядра и перемещения поддержки SoC и плат из ядра в загружаемые модули.

Модульные ядра

Поддержка модуля ядра

Образ ядра Generic Kernel Image (GKI) может не содержать требуемой поддержки драйверов для включения устройства в монтирование разделов. Чтобы включить устройство в монтирование разделов и продолжить загрузку, первый этап init улучшен для загрузки модулей ядра, присутствующих на ramdisk . RAMDisk разделен на generic и vendor ramdisk. Модули ядра vendor хранятся в vendor ramdisk. Порядок загрузки модулей ядра можно настраивать.

ОтладкаFS

Android 11 удаляет поддержку платформы для DebugFS и требует, чтобы она не была смонтирована или доступна на производственных устройствах. Хотя DebugFS был создан для целей отладки, он был включен в пользовательские и используемые сборки для общих и специфичных для поставщика компонентов. DebugFS устарел, поскольку он создает:

  • Нестабильный и недокументированный API. Для корректной работы Android требуются четко определенные и стабильные интерфейсы ядра Linux и HAL. Тесты VTS обеспечивают наличие и корректность этих интерфейсов. DebugFS не может быть обеспечен, поскольку его ABI не является ни стабильным, ни документированным.

  • Низкое качество кода. Поскольку они предназначены для отладки, узлы, добавленные в debugfs , не проверяются и не тестируются так же тщательно, как в других файловых системах. Когда в debugfs обнаруживаются ошибки, они рассматриваются как имеющие меньший приоритет, что способствует уязвимостям безопасности, которые возникают в debugfs .

  • Уязвимости безопасности. DebugFS был создан с целью помочь разработчикам ядра отлаживать систему, а не с упором на безопасность. Не существует эффективного метода проверки того, что все узлы DebugFS, представленные на производственном устройстве, защищены. Хотя ужесточение политики SEpolicy снизило серьезность уязвимостей безопасности, исходящих от debugfs , запрет монтирования debugfs — единственный способ полностью устранить поверхность атаки.

В Android 11 VTS обеспечивает отключение CONFIG_DEBUG_FS в конфигурации ядра устройства, а debugfs не указывается в /proc/filesystems .

ION кучи для GKI

В Android 11 Android Common Kernel v5.4 представляет собой фреймворк для модуляризации куч ION, специфичных для конкретного поставщика, при сохранении встроенного основного драйвера ION, что позволяет OEM-производителям сохранять модификации драйвера ядра ION при использовании образа Generic Kernel Image (GKI).

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

Автоматический отзыв разрешений

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

Обновления основного модуля

Android 11 представляет несколько новых модулей и обновляет несколько существующих модулей , представленных в Android 10.

Наложения ресурсов времени выполнения

Android 11 или выше поддерживает новый механизм для RRO . Улучшения включают зарезервированное пространство идентификаторов ресурсов, файл res/xml/overlays.xml для перечисления целевых ресурсов, правило сборки Soong для оверлеев, файл OverlayConfig для настройки изменчивости, состояния по умолчанию и приоритета оверлеев.

Поставщик НДК

Снимки поставщиков

Android 11 поддерживает артефакты сборки снимков VNDK и снимки поставщиков , которые можно использовать для сборки vendor.img независимо от версии Android в исходном дереве. Это позволяет использовать смешанные версии образов, например, образ старого поставщика и более новый системный образ.

Аудио

Для захвата звука с FM-тюнера требуется привилегированное разрешение

В Android 11 источник звука MediaRecorder.AudioSource.RADIO_TUNER виден как @SystemApi и его использование при захвате звука с помощью AudioRecord или MediaRecorder требует привилегированного разрешения android.permission.CAPTURE_AUDIO_OUTPUT

Аудио эффекты

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

Ограничение по типу устройства

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

Выполнение

Реализация аудио

В Android 11 реализовано более строгое применение реализаций HAL звукового триггера во время выполнения, чем в более ранних версиях.

Автомобильный

Подробности релиза

Чтобы узнать о новых функциях и улучшениях для автомобилей, см. Подробности выпуска для автомобилей .

API сброса порта USB

Производители устройств могут реализовать API сброса порта USB в Android 11 для сброса соединения USB-гаджета с подключенными хостами.

Камера

Боке камеры

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

Увеличение масштаба камеры

В Android 11 приложение может использовать зум камеры (цифровой и оптический) через настройку ANDROID_CONTROL_ZOOM_RATIO . Эта настройка представляет собой коэффициент с плавающей точкой, который обеспечивает лучшую точность зума по сравнению с использованием целочисленных значений с настройкой ANDROID_SCALER_CROP_REGION , а также позволяет уменьшать масштаб (< 1.0f).

Одновременная потоковая передача с камеры

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

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

В Android 11 представлена ​​обновленная реализация эмулируемой камеры HAL на виртуальных устройствах Cuttlefish и Android Emulator , которая добавляет поддержку дополнительных функций камеры, включая:

  • захват RAW-файлов
  • Переработка YUV
  • Устройства уровня 3
  • Поддержка логической камеры
  • Поддержка только глубинной камеры

Эту эмулированную камеру HAL можно найти по адресу /platform/hardware/google/camera/devices/EmulatedCamera/hwl .

Лучшие практики многокамерной съемки

Чтобы в полной мере воспользоваться функциями, предоставляемыми многокамерностью, сохраняя при этом совместимость приложений, следуйте этим рекомендациям при реализации логического многокамерного устройства. Сюда входят рекомендации по использованию API ANDROID_CONTROL_ZOOM_RATIO , представленного в Android 11.

Системные камеры

В Android 11 реализована поддержка системных камер через разрешение android.permission.SYSTEM_CAMERA . Системные камеры позволяют реализовать функции камеры, которые могут использоваться в привилегированных или системных приложениях, но недоступны для сторонних общедоступных приложений.

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

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

Связность

Bluetooth и NFC

Синхронизация платежей NFC вне хоста

Android поддерживает эмуляцию карты NFC с защищенным элементом для эмуляции карты вне хоста, но возможно, что предпочитаемый платежный сервис, указанный в настройке «Tap & pay», не синхронизирован с приложением в защищенном элементе.

Android 11 решает эту проблему с помощью синхронизации платежей вне хоста — механизма, который позволяет синхронизировать конфигурацию оплаты в Tap & pay, конфигурацию маршрутизации на бесконтактном интерфейсе (CLF) и выбранное приложением состояние в защищенном элементе.

Кошелек быстрого доступа

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

Звонки и сообщения

Поведение при экстренном вызове

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

  • Когда пользователь совершает экстренный вызов во время текущего вызова, в зависимости от настройки ключа KEY_ALLOW_HOLD_CALL_DURING_EMERGENCY_BOOL устройство автоматически отключает текущий вызов или переводит его на удержание и запрещает переключение обратно на текущий вызов до тех пор, пока экстренный вызов не будет отключен.
  • Во время экстренного вызова входящие вызовы автоматически отклоняются и отображаются для пользователя как пропущенные. Во время активного экстренного вызова исходящие неэкстренные вызовы не могут быть сделаны.
  • В режиме экстренного обратного вызова выполнение неэкстренного вызова приводит к выходу устройства из режима экстренного обратного вызова. Если выполняется экстренный вызов, устройство повторно входит в режим экстренного обратного вызова после завершения вызова. Входящие вызовы не приводят к выходу устройства из режима экстренного обратного вызова.
  • Активные экстренные вызовы нельзя переключить или удержать.

Обновляемая база данных номеров экстренных служб

Android 11 представляет базу данных номеров экстренных служб , которую можно обновлять с помощью обновлений OTA. База данных содержит список номеров экстренных служб с соответствующими странами и категориями услуг.

Перевозчик

eSIM

Процесс активации eSIM через приложение оператора

Android 11 улучшает процесс активации профиля eSIM через приложение оператора. При использовании кода активации для загрузки профиля LPA может запустить пользовательский интерфейс приложения оператора для получения дополнительной информации от пользователя. Приложение оператора также может запустить LUI для активации профиля eSIM.

Более подробную информацию см. здесь:

Обработка ошибок API eUICC

В Android 11 представлены дополнительные ключи и значения для улучшения обработки ошибок, позволяя вызывающей стороне API eUICC обрабатывать определенные ошибки индивидуально.

Параметр опции для метода стирания подписок

Начиная с Android 11, при использовании метода eraseSubscriptions в EuiccManager необходимо предоставить значение перечисления EuiccCardManager#ResetOption , чтобы указать, следует ли стирать все тестовые, рабочие или оба типа подписок.

Поддержка многооператорской сети

Устройства, запускаемые с Android 11, могут поддерживать несколько сетей наземной мобильной связи общего пользования (PLMN) . Поддержка нескольких сетей PLMN обеспечивает гибкость для операторов мобильной связи (MNO), позволяя им транслировать несколько идентификаторов.

Поддержка малых ячеек

Устройства, запущенные с Android 11, могут обеспечивать поддержку закрытых групп абонентов (CSG) с помощью методов в API идентификации ячеек, которые получают информацию о CSG-информации ячейки. Это полезно для операторов мобильной связи (MNO), которые управляют малыми ячейками через закрытые группы абонентов.

API диагностики подключения

API диагностики подключений позволяет приложениям, владеющим сетями или управляющим ими, например, приложениям операторов связи, приложениям VPN и приложениям рекомендаций Wi-Fi, получать диагностическую информацию о подключении к сети от фреймворка.

Изменения в API Open Mobile

В Android 11 реализованы дополнительные функции для Open Mobile API (OMAPI):

  • Правила анализа привилегий оператора.
  • Настройка доступа к встроенному элементу безопасности (eSE) или предоставление eSE с использованием одного или нескольких из следующих способов:

    • SECURE_ELEMENT_PRIVILEGED_OPERATION системное привилегированное разрешение
    • Настраиваемые правила доступа к главному приложению (ARA-M) идентификаторы приложений (AID)
    • reset системный API для сброса считывателя OMAPI
  • Предоставление читателям четкого индикатора для приложений, позволяющего фильтровать возможности устройства.

Отчет об уровне сигнала

В Android 11 вы можете выбрать и настроить несколько типов измерения сигнала для использования фреймворком для отчета о силе сигнала сетей радиодоступа (RAN) 4G LTE и 5G NR. Затем вы можете использовать сообщаемые силы сигнала для управления тем, как полосы сигнала отображаются на ваших устройствах.

Wi-Fi

Конфигурации сетей Wi-Fi оператора

В Android 11 вы можете использовать API предложений Wi-Fi для добавления конфигураций сетей Wi-Fi оператора вместо настройки параметра carrier_wifi_string_array в диспетчере конфигураций оператора.

Поддержка точки доступа Wi-Fi (soft AP) для модема

Android 11 представляет улучшенную конфигурацию точки доступа Wi-Fi (soft AP) , предоставляя больше поддержки для вариантов использования и настроек оператора. Эти изменения позволяют производителям устройств настраивать следующее:

  • SSID и BSSID
  • Тип безопасности (включая WPA3)
  • Скрытый SSID
  • Рабочий диапазон и канал (включая ACS)
  • Максимальное количество разрешенных клиентов
  • Значение тайм-аута автоматического выключения
  • Белый и черный списки, позволяющие пользователю управлять связанными устройствами

Улучшения выбора сети Wi-Fi

В Android 11 реализованы усовершенствования выбора сетей Wi-Fi для улучшения подключения к сети Wi-Fi.

Улучшения Wi-Fi Passpoint

В Android 11 реализованы следующие улучшения функции Passpoint :

  • Поддержка истечения срока действия профиля, позволяющая системе уведомлять пользователя и применять даты истечения срока действия профиля. Для этого требуется профиль с инициализированным полем SubscriptionParameters/ExpirationDate .
  • Поддержка частных самоподписанных сертификатов CA для профилей Passpoint R1.
  • Поддержка профилей Passpoint R1 без сертификата CA. Система использует хранилище доверенных сертификатов по умолчанию для аутентификации соединения.
  • Поддержка настройки именованного домена AAA отдельно от ANQP FQDN (с использованием узла Extension/Android в PPS-MO). Это позволяет указать домен AAA, отличный от объявленного домена, не ставя под угрозу безопасность соединения.
  • Поддержка нескольких установленных конфигураций Passpoint с одним и тем же FQDN. Это полезно для операторов, которые развертывают более одной комбинации мобильного кода страны (MCC) и мобильного кода сети (MNC) в своей сети, но имеют только один FQDN.
  • Возможность обнаружения и принятия точек доступа Passpoint R3.
  • Улучшенное сопоставление сетей:
    • Поддерживает сопоставление домашнего провайдера для HomeSP/HomeOIList .
    • Поддерживает сопоставление поставщиков услуг домашнего хозяйства для HomeSP/OtherHomePartners .
    • Удаляет требование соответствия метода EAP, которое не требуется спецификацией Passpoint.

Профили Wi-Fi улучшили поддержку общих имен

В Android 11 профили Wi-Fi остаются действительными при изменении корневого центра сертификации (CA) оператора, если общее имя указано в необязательном поддереве расширения Android . В предыдущих версиях пользователи должны были загрузить новый профиль от оператора, если изменился корневой CA.

Данные

Аудит доступа к данным

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

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

Отображать

Обновления API уведомлений Bubbles

Android 10 представил API уведомлений Bubbles , который позволяет пользователям выполнять несколько задач из любой точки своего устройства. Android 11 включает несколько улучшений Bubbles. Наиболее заметные изменения — включение Bubbles по умолчанию и перемещение настроек из параметров разработчика. Для внедрения Bubbles на платформе Android не требуется никаких усилий.

Элементы управления устройством

Функция управления устройствами, доступная начиная с Android 11, позволяет пользователю быстро просматривать и управлять внешними устройствами, такими как освещение, термостаты и камеры, из меню питания. Агрегаторы устройств (например, Google Home) и приложения сторонних поставщиков могут предоставлять устройства для отображения в этом пространстве. Для поддержки этой функции не требуется никакой работы по реализации платформы. Реализация по умолчанию включена в системный пользовательский интерфейс AOSP. Информацию о добавлении поддержки управления устройствами в ваше приложение управления см. на странице разработчиков Android Управление внешними устройствами .

Обновления классификатора текста

Android 11 представляет обновляемую реализацию по умолчанию службы классификатора текста , которая находится в модуле ExtServices Mainline. Производителям устройств рекомендуется использовать эту реализацию TextClassifierService , поскольку ее можно обновить с помощью обновлений Mainline OTA.

Предприятие

Реализуйте пользовательские типы пользователей

В Android 11 введена концепция четко определенных типов пользователей, представляющая все различные типы пользователей, разрешенные функцией Android Multi-user. С помощью этой функции OEM-производители могут настраивать предопределенные типы пользователей AOSP и определять новые типы профилей. Для получения дополнительной информации см. раздел о типах пользователей .

Улучшения рабочего профиля

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

ИТ-администраторы, которые поддерживают Android, должны поддерживать работу на любом устройстве Android, которое их пользователи приносят на работу. Улучшение согласованности UX критически важных рабочих процессов значительно снижает стоимость поддержки Android в средах BYOD. Последовательная реализация функций конфиденциальности на всех устройствах также повышает доверие пользователей. Некоторые обновления включают:

  • Список приложений имеет отдельные вкладки: «Личное» и «Работа».
  • На вкладке «Работа» есть переключатель для отключения рабочего профиля.
  • Когда рабочий профиль отключен, значки рабочих приложений становятся серыми, а на рабочей вкладке появляется сообщение о том, что рабочие приложения приостановлены.

Взаимодействие

Обновления среды выполнения Context Hub

Android 11 представляет CHRE API v1.4 , который включает поддержку информации о ячейках 5G, дамп отладки nanoapp и другие улучшения. Он также включает поддержку использования TensorFlow Lite для микроконтроллеров в nanoapps. Для получения дополнительной информации см. Context Hub Runtime Environment (CHRE) .

Тактильные ощущения

В Android 11 включено новое руководство по внедрению тактильных технологий и оценке их эффективности на вашем устройстве.

Вход

Геймпады

В Android 11 добавлена ​​поддержка сторонних игровых контроллеров, включая:

  • Контроллер Nintendo Switch Pro: Android добавляет поддержку USB и Bluetooth-подключения для контроллера Nintendo Switch Pro. Для всех реализаций требуется тестирование CTS , используйте NintendoSwitchProTest для проверки вашей реализации.

  • Контроллер Steam: Android добавляет USB-подключение для контроллера Steam.

Нейронные сети

Лучшие практики

Чтобы поощрить разработчиков приложений использовать NNAPI, следуйте этим рекомендациям при реализации драйвера NNAPI на устройствах под управлением Android 11.

Поток управления

В Android 11 NNAPI добавляет две операции потока управления , IF и WHILE , которые принимают другие модели в качестве аргументов и выполняют их условно ( IF ) или многократно ( WHILE ). Это позволяет создавать модели, которые выполняют различные операции на основе входных значений или выполняют операции несколько раз без развертывания.

Казни в ограждении

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

Домены памяти

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

Качество обслуживания

Начиная с Android 11, NNAPI обеспечивает улучшенное качество обслуживания (QoS), позволяя приложению указывать относительные приоритеты своих моделей, максимальное время, ожидаемое для подготовки модели, и максимальное время, ожидаемое для завершения выполнения.

Знаковое 8-битное квантование

Neural Network HAL (NN HAL) 1.3, представленная в Android 11, поддерживает знаковое 8-битное квантование для Neural Networks API. Для получения дополнительной информации см. Обновления NN HAL в Android 11 .

Улучшения теста

Android 11 включает в себя утилиту тестирования для проведения фаззинг-тестирования реализаций драйверов NNAPI и серию краш-тестов для проверки устойчивости драйверов в условиях интенсивной эксплуатации.

Более подробную информацию см. здесь:

Датчики

Тип датчика угла поворота петли

В Android 11 представлен тип датчика угла поворота шарнира, представляющий собой датчик, измеряющий угол между двумя неотъемлемыми частями устройства.

Датчики Multi-HAL 2.1

Sensors Multi-HAL 2.1 , доступный на Android 11, является итерацией Sensors Multi-HAL 2.0, которая поддерживает загрузку sub-HAL, которые могут предоставлять тип датчика угла шарнира . Для поддержки этого типа датчика sub-HAL должны использовать API sub-HAL, определенные в заголовке 2.1 SubHal .

СМИ

DRM

Android 11 упрощает путь MediaDrm/Crypto IPC за счет удаления MediaDrmService. Добавлен новый API MediaDrm для перечисления доступных плагинов DRM.

Декодирование с малой задержкой в ​​MediaCodec

Android 11 включает MediaCodec 2.0, позволяющий декодировать медиа с малой задержкой, что критически важно для приложений, работающих в режиме реального времени.

Разнообразный

Начиная с Android 11, приложение AOSP Gallery не обязано поддерживать тип MIME application/sdp для намерения ACTION_VIEW . Фильтр намерения ACTION_VIEW для типа MIME application/sdp был удален из файла манифеста приложения AOSP Gallery .

Эти требования изложены в разделе 3.2.3.1. Основные цели применения CDD.

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

Пользовательское пространство lmkd

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

Власть

Невнимательный сон из-за ожидания телевизора

В Android 11 добавлена ​​новая функция под названием inattentive sleep для режима ожидания телевизора . Это функция энергосбережения, которая позволяет установить тайм-аут бездействия пользователя, по истечении которого устройство переходит в спящий режим, даже если удерживаются wakelocks.

Безопасный

OEMCrypto

Android 11 поддерживает OEMCrypto API версии 16.

Хранилище

Хранилище с ограниченным объемом данных

Android 11 поддерживает scoped storage , что ограничивает доступ приложений к внешнему хранилищу. Кроме того, MediaProvider становится обработчиком файловой системы (для FUSE) для внешнего хранилища, делая файловую систему на внешнем хранилище и базу данных MediaProvider согласованными.

Устаревание SDCardFS

Поддержка SDCardFS устарела в Android 11. Тестирование VTS не позволяет монтировать файловые системы, перечисленные как SDCardFS. Функции SDCardFS заменены другими методами.

Тесты

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

Для Android 11 введено много новых ключевых модулей и изменений тестов для CTS. См. CTS Release Notes для получения дополнительной информации.

Тесты CTS для API управления APEX

Начиная с Android 11 пакет CtsShimApex содержит два готовых приложения, которые CTS использует для тестирования привилегий и разрешений.

Если ваше устройство не поддерживает управление пакетами APEX или если на устройстве установлена ​​версия 10 или ниже, два готовых приложения должны быть предварительно установлены в системе по отдельности.

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

Заметки о выпуске CTS

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

Отладка

Ведение журнала поставщиков в определенном объеме

Android 11 добавляет новый HAL, IDumpstateDevice (версия 1.1). Этот HAL предоставляет новые методы для более узкого охвата журналов поставщиков, которые включены в стандартные отчеты об ошибках, а также позволяет пользовательским сборкам включать и выключать журналирование поставщиков (по умолчанию для пользовательских сборок отключено). Это дает OEM-производителям больше контроля над тем, что включается в определенные типы отчетов об ошибках.

GWP-ASan: обнаружение повреждения кучи

GWP-ASan — это встроенная функция распределения памяти, которая помогает находить ошибки использования памяти после освобождения и переполнения буфера кучи как в 32-, так и в 64-разрядных процессах.

GWP-ASan автоматически включен в Android 11 для системных приложений и исполняемых файлов платформы. Не отключайте его в платформе, а включите в своих приложениях.

Обновления

Улучшения динамического обновления системы (DSU)

Android 10 включает улучшения динамических обновлений системы (DSU) , в том числе:

  • Новый интерфейс, загрузчик DSU в один клик
  • Поддержка многосекционных DSU
  • DSU с подписью OEM для повышения безопасности
  • Новые способы управления совместимостью между DSU и устройствами

Пакеты OTA для нескольких SKU

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

Подпишите сборки для выпуска

В Android 11 изменены несколько команд CLI для подписи сборок для выпуска.

Тестовый набор поставщика (VTS) 11

Android 11 Vendor Test Suite (VTS) обеспечивает обширное тестирование ядра и уровня аппаратной абстракции (HAL).

Виртуальный А/Б

Android 11 объединяет обновления A/B и не-A/B обновления, предоставляя виртуальный A/B . Виртуальный A/B обеспечивает бесперебойные обновления для устройств, сводя к минимуму затраты на хранилище.

Тестирование

Распределитель кучи Scudo по умолчанию

Начиная с Android 11, для всего собственного кода используется распределитель кучи scudo (за исключением устройств с малым объемом памяти, где по-прежнему используется jemalloc). Поэтому вам больше не нужно включать scudo для каждого двоичного файла. Для получения дополнительной информации о scudo см. страницу Scudo .

ТВ

Структура CAS

Android 11 поддерживает фреймворк Media conditional access systems (Media CAS) для Android TV, который предоставляет стандартные API Java для сторонних разработчиков и OEM-производителей. Подробнее см. в CAS Framework .

Мультимедийное туннелирование

В Android 11 пользователи могут реализовать мультимедийное туннелирование с аудио- и видеоконтентом, напрямую подаваемым из Tuner.

Каркас тюнера

Android 11 поддерживает Tuner Framework для Android TV, который доставляет аудио/видеоконтент с помощью Tuner HAL, Tuner SDK API и Tuner Resource Manager.

Структура ТВ-входа

Android TV Input Framework (TIF) упрощает доставку живого контента на Android TV, предоставляя производителям стандартный API для создания модулей ввода для управления Android TV и позволяя осуществлять поиск и рекомендации живого ТВ. Android 11 представляет три новых компонента для TIF.