Bluetooth es un módulo de línea principal opcional que comienza con Android 13. El módulo de línea principal de Bluetooth tiene como objetivo proporcionar una experiencia Bluetooth uniforme y de alta calidad a todos los usuarios de Android.
Motivación
La motivación principal detrás del módulo Bluetooth es brindar una experiencia de alta calidad a los socios, usuarios y desarrolladores de aplicaciones. Lo lograremos de varias maneras clave:
- Envíe actualizaciones más rápido y con mayor frecuencia con nuevas funciones, correcciones de errores e interoperabilidad y correcciones de seguridad.
- Reduzca el trabajo repetitivo de los socios
- Reducción de los gastos generales de rebase de la base de código cada año.
- Reducción de los gastos generales de implementación de OTA en dispositivos heredados.
- Reduzca la fragmentación y cree una experiencia coherente para los desarrolladores y usuarios de aplicaciones
- Mejore la seguridad global dentro del ecosistema de Android. Una gran parte de las vulnerabilidades de seguridad de Android involucran a Bluetooth.
formato de paquete
El paquete es un APEX que contiene el APK de Bluetooth (definido actualmente en packages/modules/Bluetooth/android/app
), nuestras bibliotecas nativas ( libbluetooth.so
y libbluetooth_jni.so
), nuestras API (en packages/modules/Bluetooth/framework/java/android/bluetooth
), y nuestras interfaces HIDL.
Límite del módulo
Figura 1. Límite del módulo Bluetooth
Estamos migrando todos nuestros repositorios existentes a uno solo en system/bt
. La figura 1 representa los directorios actuales que comprenderán nuestro módulo.
dependencias
El módulo Bluetooth tiene dependencias en lo siguiente:
- Usos de API
@hide
entrantes y salientes que se limpiarán - Bibliotecas necesarias para el APK de Bluetooth,
libbluetooth.so
ylibbluetooth_jni.so