Verificar e depurar

Para verificar e depurar a pilha Bluetooth, use as ferramentas fornecidas no AOSP e os testes do Bluetooth Special Interest Group (SIG).

Testar e verificar

Para testar a pilha Bluetooth, o AOSP oferece uma combinação de testes de unidade, testes CTS e ferramentas para o Bluetooth Profile Tuning Suite (PTS).

Testes de unidade no AOSP

O AOSP inclui testes funcionais e de unidade para a pilha Bluetooth padrão. Esses testes estão localizados em /packages/modules/Bluetooth/system/test/. Para executar os testes do AOSP, faça o seguinte:

  1. Interrompa o ambiente de execução do Android:

    adb shell stop
  2. No diretório de teste, execute o arquivo executável do shell e inclua opções se quiser executar um teste ou pacote de testes específico:

    ./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
  3. Quando os testes terminarem, reative o ambiente de execução do Android:

    adb shell start

A lista de nomes de testes pode ser encontrada em /packages/modules/Bluetooth/system/test/README.md.

Profile Tuning Suite

O Bluetooth SIG oferece o Bluetooth PTS, uma ferramenta de teste para interoperabilidade de protocolo e perfil. Para mais informações, consulte o site do Bluetooth Profile Tuning Suite.

Testes CTS

O Conjunto de testes de compatibilidade (CTS) inclui testes para a pilha Bluetooth. Eles estão localizados em cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth.

Opções de depuração

O AOSP oferece diferentes métodos de depuração da pilha Bluetooth de um dispositivo, incluindo registros e relatórios de bugs. Esses métodos podem não funcionar para problemas que não podem ser reproduzidos ou para problemas de áudio, que podem ser afetados por várias partes da plataforma e do dispositivo.

Depuração com relatórios de bugs

Para verificar o status do serviço Bluetooth usando dumpsys, use o seguinte comando:

adb shell dumpsys bluetooth_manager

Por padrão, todas as mensagens de registro são de nível de rastreamento 2. Para saber mais sobre os níveis de registro e mudar os níveis de registro de diferentes perfis, consulte system/bt/conf/bt_stack.conf.

Para extrair registros de rastreamento do relatório de bugs, use o script btsnooz.

  1. Acesse btsnooz.py.

  2. Extraia a versão de texto do relatório de bugs.

  3. Execute btsnooz.py na versão de texto do relatório de bugs:

    btsnooz.py BUG_REPORT.txt > BTSNOOP.log

Depuração com registros

No Android 4.4 e versões mais recentes, é possível coletar manualmente registros BTSnoop, que se assemelham ao formato de rastreamento na RFC 1761. Esses registros capturam os pacotes da Interface de controlador do host (HCI). Para a maioria dos dispositivos Android, os registros são armazenados em data/misc/bluetooth/logs.

Por motivos de privacidade, o BTSnoop sempre ativo e "na memória" registra apenas informações e eventos não pessoais. Para registrar todos os dados, o usuário precisa ativar o rastreamento Bluetooth HCI fazendo o seguinte:

  1. Ative as Opções do desenvolvedor no dispositivo.

  2. No menu Opções do desenvolvedor, ative a opção Ativar registro de rastreamento Bluetooth HCI.

  3. Reinicie o Bluetooth para que o registro entre em vigor.