Verifica e debug

Per verificare e eseguire il debug dello stack Bluetooth, utilizza gli strumenti forniti in AOSP e i test del Bluetooth Special Interest Group (SIG).

Testare e verificare

Per testare lo stack Bluetooth, AOSP fornisce un mix di test di unità, test CTS e strumenti per la suite di ottimizzazione del profilo Bluetooth.

Test delle unità in AOSP

AOSP include test funzionali e di unità per lo stack Bluetooth predefinito. Questi test si trovano in /packages/modules/Bluetooth/system/test/. Per eseguire i test AOSP:

  1. Interrompi il runtime di Android:
    adb shell stop
  2. Dalla directory di test, esegui il file eseguibile della shell e includi le opzioni se vuoi eseguire un test o una suite di test specifici:
    ./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
  3. Al termine dei test, riattiva il runtime Android:
    adb shell start

L'elenco dei nomi dei test è disponibile in /packages/modules/Bluetooth/system/test/README.md.

Profile Tuning Suite

Bluetooth SIG fornisce la suite di ottimizzazione dei profili Bluetooth (PTS), uno strumento di test per l'interoperabilità di protocolli e profili. Per ulteriori informazioni, visita il sito di Bluetooth Profile Tuning Suite.

Test CTS

La Compatibility Test Suite (CTS) include test per lo stack Bluetooth. Si trovano in cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth.

Opzioni di debug

AOSP fornisce diversi metodi per eseguire il debug dello stack Bluetooth di un dispositivo, inclusi log e segnalazioni di bug. Questi metodi potrebbero non funzionare per problemi che non possono essere riprodotti o per problemi audio, che possono essere interessati da più parti della piattaforma e del dispositivo.

Debug con le segnalazioni di bug

Per controllare lo stato del servizio Bluetooth utilizzando dumpsys, utilizza il seguente comando:

adb shell dumpsys bluetooth_manager

Per impostazione predefinita, tutti i messaggi di log sono a livello di traccia 2. Per scoprire di più sui livelli di logging e modificarli per i diversi profili, consulta system/bt/conf/bt_stack.conf.

Per estrarre i log di monitoraggio dalla segnalazione di bug, utilizza lo script btsnooz.

  1. Ricevi btsnooz.py.
  2. Estrai la versione in testo della segnalazione di bug.
  3. Esegui btsnooz.py sulla versione in testo della segnalazione di bug:
    btsnooz.py BUG_REPORT.txt > BTSNOOP.log

Debug con i log

In Android 4.4 e versioni successive, puoi raccogliere manualmente i log BTSnoop, che assomigliano al formato di snoop in RFC 1761. Questi log acquisiscono i pacchetti HCI (Host Controller Interface). Per la maggior parte dei dispositivi Android, i log vengono archiviati in data/misc/bluetooth/logs.

Per motivi di privacy, BTSnoop "in-memory" sempre attivo registra solo informazioni ed eventi non personali. Per registrare tutti i dati, l'utente deve attivare l'esame HCI Bluetooth nel seguente modo:

  1. Attiva Opzioni sviluppatore sul dispositivo.
  2. Nel menu Opzioni sviluppatore, attiva l'opzione di attivazione/disattivazione Attiva log di esame HCI Bluetooth.
  3. Riavvia il Bluetooth per rendere effettive le registrazioni.