Bluetooth

Bluetooth est un module Mainline facultatif à partir d’Android 13. Le module Bluetooth Mainline vise à fournir une expérience Bluetooth cohérente et de haute qualité à tous les utilisateurs d’Android.

Motivation

La principale motivation du module Bluetooth est de fournir une expérience de haute qualité aux partenaires, aux utilisateurs et aux développeurs d'applications. Nous y parviendrons de plusieurs manières clés :

  1. Expédiez les mises à jour plus rapidement et plus fréquemment avec de nouvelles fonctionnalités, des correctifs de bugs et d'interopérabilité, ainsi que des correctifs de sécurité.
  2. Réduisez le travail répétitif pour les partenaires
    1. Réduction des frais liés au rebasage de la base de code chaque année.
    2. Réduction des frais liés au déploiement des OTA sur les appareils existants.
  3. Réduire la fragmentation et créer une expérience cohérente pour les développeurs d'applications et les utilisateurs
  4. Améliorez la sécurité globale au sein de l’écosystème Android. Une grande partie des vulnérabilités de sécurité Android impliquent Bluetooth.

Format du paquet

Le package est un APEX contenant l'APK Bluetooth (actuellement défini dans packages/modules/Bluetooth/android/app ), nos bibliothèques natives ( libbluetooth.so et libbluetooth_jni.so ), nos API (sous packages/modules/Bluetooth/framework/java/android/bluetooth ), et nos interfaces HIDL.

Limite du module

Architecture du module Bluetooth principal

Figure 1. Limite du module Bluetooth

Nous migrons tous nos dépôts existants en un seul sous system/bt . La figure 1 représente les répertoires actuels qui composeront notre module.

Dépendances

Le module Bluetooth a des dépendances sur les éléments suivants :

  • Utilisations de l'API @hide entrantes et sortantes qui seront nettoyées
  • Bibliothèques requises pour l'APK Bluetooth, libbluetooth.so et libbluetooth_jni.so