Bluetooth — это дополнительный модуль Mainline, начиная с Android 13. Модуль Bluetooth Mainline предназначен для обеспечения стабильной и высококачественной работы Bluetooth для всех пользователей Android.
Мотивация
Основной мотивацией модуля Bluetooth является предоставление высококачественных услуг партнерам, пользователям и разработчикам приложений. Мы достигнем этого несколькими ключевыми способами:
- Отправляйте обновления быстрее и чаще благодаря новым функциям, исправлениям ошибок и совместимости, а также исправлениям безопасности.
- Сокращение повторяющейся работы для партнеров
- Уменьшение накладных расходов на ежегодное обновление кодовой базы.
- Уменьшены накладные расходы на развертывание OTA на устаревшие устройства.
- Уменьшите фрагментацию и создайте единый интерфейс для разработчиков и пользователей приложений.
- Улучшите глобальную безопасность в экосистеме Android. Большая часть уязвимостей безопасности Android связана с Bluetooth.
Формат пакета
Пакет представляет собой APEX, содержащий Bluetooth APK (в настоящее время определенный в packages/modules/Bluetooth/android/app
), наши собственные библиотеки ( libbluetooth.so
и libbluetooth_jni.so
), наши API (в packages/modules/Bluetooth/framework/java/android/bluetooth
) и наши интерфейсы HIDL.
Граница модуля
Рис. 1. Границы модуля Bluetooth
Мы переносим все наши существующие репозитории в один под system/bt
. На рисунке 1 представлены текущие каталоги, которые будут содержать наш модуль.
Зависимости
Модуль Bluetooth зависит от следующего:
- Входящие и исходящие использования
@hide
API, которые будут очищены - Библиотеки, необходимые для Bluetooth APK,
libbluetooth.so
иlibbluetooth_jni.so