Bluetooth

Le Bluetooth est un module principal optionnel à partir d'Android 13. Le module principal Bluetooth vise à offrir une expérience Bluetooth cohérente et de haute qualité à tous les utilisateurs Android.

Motivation

L'objectif principal du module Bluetooth est de fournir une expérience de haute qualité aux partenaires, aux utilisateurs et aux développeurs d'applications. Pour ce faire, nous allons procéder de plusieurs manières:

  1. Publiez des mises à jour plus rapidement et plus fréquemment avec de nouvelles fonctionnalités, des corrections de bugs et d'interopérabilité, et des correctifs de sécurité.
  2. Réduire le travail répétitif pour les partenaires
    1. Réduction des frais généraux liés à la rebase du codebase chaque année.
    2. Réduction des coûts liés au déploiement des mises à jour OTA sur les anciens appareils.
  3. Réduire la fragmentation et créer une expérience cohérente pour les développeurs et les utilisateurs d'applications
  4. Améliorer la sécurité globale dans l'écosystème Android Une grande partie des failles de sécurité Android implique le Bluetooth.

Format du package

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 vers un seul dépôt sous system/bt. La figure 1 représente les répertoires actuels qui composeront notre module.

Dépendances

Le module Bluetooth dépend des éléments suivants:

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