Para verificar e depurar a pilha Bluetooth, use as ferramentas fornecidas no AOSP e nos testes do Grupo de Interesse Especial (SIG) do Bluetooth.
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.
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:
- Pare o ambiente de execução do Android:
adb shell stop
- No diretório de teste, execute o arquivo executável do shell e
inclua opções se você quiser executar um teste ou conjunto de testes específico:
./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
- 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
.
Pacote de ajuste de perfil
O Bluetooth SIG fornece o Bluetooth Profile Tuning Suite (PTS, na sigla em inglês), uma ferramenta de teste para interoperabilidade de protocolo e perfil. Para mais informações, consulte o site Bluetooth Profile Tuning Suite.
Testes CTS
O conjunto de teste 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 de 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.
Depurar 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 2 de rastreamento.
Para saber mais sobre os níveis de registro e mudá-los
para perfis diferentes, consulte
system/bt/conf/bt_stack.conf
.
Para extrair os registros de snooping do relatório de bug, use o
script btsnooz
.
- Receba
btsnooz.py
. - Extraia a versão em texto do relatório de bug.
- Execute
btsnooz.py
na versão de texto do relatório de bug:btsnooz.py BUG_REPORT.txt > BTSNOOP.log
Depurar com registros
No Android 4.4 e mais recentes, é possível coletar manualmente os registros do BTSnoop,
que se assemelham ao formato de snoop no 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 "em memória" sempre ativado registra apenas informações e eventos não pessoais. Para registrar todos os dados, o usuário precisa ativar o rastreamento do HCI Bluetooth fazendo o seguinte:
- Ative as Opções do desenvolvedor no dispositivo.
- No menu Opções do desenvolvedor, ative a opção Ativar registro de rastreamento Bluetooth HCI.
- Reinicie o Bluetooth para que o registro entre em vigor.