Pour vérifier et déboguer la pile Bluetooth, utilisez les outils fournis dans AOSP et les tests du Bluetooth Special Interest Group (SIG).
Tester et vérifier
Pour tester la pile Bluetooth, AOSP fournit un ensemble de tests unitaires, de tests CTS et d'outils pour la suite de réglage des profils Bluetooth.
Tests unitaires dans AOSP
AOSP inclut des tests fonctionnels et unitaires pour la pile Bluetooth par défaut. Ces tests se trouvent dans
/packages/modules/Bluetooth/system/test/
.
Pour exécuter les tests AOSP, procédez comme suit:
- Arrêtez l'environnement d'exécution Android:
adb shell stop
- Depuis le répertoire de test, exécutez le fichier exécutable de l'interface système et incluez des options si vous souhaitez exécuter un test ou une suite de tests spécifiques:
./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
- Une fois les tests terminés, réactivez l'environnement d'exécution Android:
adb shell start
La liste des noms de test se trouve dans
/packages/modules/Bluetooth/system/test/README.md
.
Suite de réglage de profil
Le Bluetooth SIG fournit la Bluetooth Profile Tuning Suite (PTS), un outil de test de l'interopérabilité des protocoles et des profils. Pour en savoir plus, consultez le site Bluetooth Profile Tuning Suite.
Tests CTS
La suite de tests de compatibilité (CTS) inclut des tests pour la pile Bluetooth. Ils se trouvent dans
cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth
.
Options de débogage
AOSP propose différentes méthodes de débogage de la pile Bluetooth d'un appareil, y compris des journaux et des rapports de bugs. Ces méthodes peuvent ne pas fonctionner pour les problèmes qui ne peuvent pas être reproduits ni pour les problèmes audio, qui peuvent être affectés par plusieurs parties de la plate-forme et de l'appareil.
Déboguer avec des rapports de bugs
Pour vérifier l'état du service Bluetooth à l'aide de dumpsys
, utilisez la commande suivante:
adb shell dumpsys bluetooth_manager
Par défaut, tous les messages de journalisation sont au niveau de trace 2.
Pour en savoir plus sur les niveaux de journalisation et les modifier pour différents profils, consultez
system/bt/conf/bt_stack.conf
.
Pour extraire les journaux de surveillance du rapport de bug, utilisez le script btsnooz
.
- Récupérez
btsnooz.py
. - Extrayez la version textuelle du rapport de bug.
- Exécutez
btsnooz.py
sur la version textuelle du rapport de bug:btsnooz.py BUG_REPORT.txt > BTSNOOP.log
Déboguer avec les journaux
Dans Android 4.4 et versions ultérieures, vous pouvez collecter manuellement des journaux BTSnoop, qui ressemblent au format snoop de la RFC 1761. Ces journaux capturent les paquets de l'interface de contrôleur d'hôte (HCI).
Pour la plupart des appareils Android, les journaux sont stockés dans data/misc/bluetooth/logs
.
Pour des raisons de confidentialité, BTSnoop "en mémoire" activé en permanence n'enregistre que des informations et des événements non personnels. Pour enregistrer toutes les données, l'utilisateur doit activer le snooping HCI Bluetooth en procédant comme suit:
- Activez les options pour les développeurs sur l'appareil.
- Dans le menu Options pour les développeurs, activez l'option Activer le journal de surveillance HCI Bluetooth.
- Redémarrez le Bluetooth pour que la journalisation prenne effet.