Verifica e debug

Per verificare ed 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 unitari, test CTS e strumenti per Bluetooth Profile Tuning Suite (PTS).

Test delle unità in AOSP

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

  1. Arresta il runtime 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 l'ambiente di 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 Bluetooth PTS, uno strumento di test per l'interoperabilità di protocolli e profili. Per ulteriori informazioni, visita il sito Bluetooth Profile Tuning Suite.

Test CTS

La suite di test di compatibilità (CTS) include test per lo stack Bluetooth. Questi 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 i problemi che non possono essere riprodotti o per i problemi audio, che possono essere influenzati da più parti della piattaforma e del dispositivo.

Debug con le segnalazioni di bug

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

adb shell dumpsys bluetooth_manager

Per impostazione predefinita, tutti i messaggi di log sono di 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 spionaggio dalla segnalazione di bug, utilizza lo script btsnooz.

  1. Ottieni 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 assomigliano al formato snoop in RFC 1761. Questi log acquisiscono i pacchetti dell'interfaccia del controller host (HCI). Per la maggior parte dei dispositivi Android, i log sono 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 procedendo nel seguente modo:

  1. Attiva Opzioni sviluppatore sul dispositivo.

  2. Nel menu Opzioni sviluppatore, attiva il pulsante di attivazione/disattivazione Attiva log di esame HCI Bluetooth.

  3. Riavvia il Bluetooth per rendere effettivo il logging.