Verifica e debug

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

Test e verifica

Per testare lo stack Bluetooth, AOSP fornisce una combinazione di test delle unità, test CTS e strumenti per la suite di ottimizzazione dei profili Bluetooth.

Test delle unità in AOSP

AOSP include test delle funzionalità e delle 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 una suite di test o di test specifica:
    ./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.

Suite di ottimizzazione dei profili

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

Test CTS

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

Opzioni di debug

AOSP offre diversi metodi per eseguire il debug dello stack Bluetooth di un dispositivo, tra cui 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, usa il seguente comando:

adb shell dumpsys bluetooth_manager

Per impostazione predefinita, tutti i messaggi di log sono di livello di traccia 2. Per ulteriori informazioni sui livelli di logging e modificare i livelli di logging per profili diversi, consulta la sezione system/bt/conf/bt_stack.conf.

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

  1. Richiedi btsnooz.py.
  2. Estrai la versione di testo della segnalazione di bug.
  3. Esegui btsnooz.py sulla versione di 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 sono simili al formato Snoop in RFC 1761. Questi log acquisiscono i pacchetti Host Controller Interface (HCI). Per la maggior parte dei dispositivi Android, i log vengono archiviati in data/misc/bluetooth/logs.

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

  1. Attiva le Opzioni sviluppatore sul dispositivo.
  2. Nel menu Opzioni sviluppatore, attiva l'opzione Abilita log di analisi HCI Bluetooth.
  3. Riavvia il Bluetooth per applicare la registrazione.