Cómo verificar y depurar

Para verificar y depurar la pila Bluetooth, usa las herramientas proporcionadas en AOSP y las pruebas del Grupo de interés especial (SIG) de Bluetooth.

Probar y verificar

Para probar la pila Bluetooth, el AOSP proporciona una combinación de pruebas de unidades, pruebas de CTS y herramientas para el conjunto de ajustes de perfiles de Bluetooth.

Pruebas de unidades en AOSP

AOSP incluye pruebas funcionales y de unidades para la pila Bluetooth predeterminada. Estas pruebas se encuentran en /packages/modules/Bluetooth/system/test/. Para ejecutar las pruebas del AOSP, haz lo siguiente:

  1. Detén el tiempo de ejecución de Android:
    adb shell stop
  2. Desde el directorio de prueba, ejecuta el archivo ejecutable de shell y, luego, incluye las opciones si quieres ejecutar una prueba o un paquete de pruebas específicos:
    ./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
  3. Cuando finalicen las pruebas, vuelve a habilitar el tiempo de ejecución de Android:
    adb shell start

La lista de nombres de pruebas se encuentra en /packages/modules/Bluetooth/system/test/README.md.

Paquete de ajuste de perfiles

Bluetooth SIG proporciona Bluetooth Profile Tuning Suite (PTS), una herramienta de prueba para la interoperabilidad de protocolos y perfiles. Para obtener más información, consulta el sitio del Conjunto de ajustes de perfiles de Bluetooth.

Pruebas del CTS

El Conjunto de pruebas de compatibilidad (CTS) incluye pruebas para la pila Bluetooth. Se encuentran en cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth.

Opciones de depuración

AOSP ofrece diferentes métodos de depuración de la pila Bluetooth de un dispositivo, incluidos informes de errores y registros. Es posible que estos métodos no funcionen para problemas que no se pueden reproducir o para problemas de audio, que pueden verse afectados por varias partes de la plataforma y el dispositivo.

Depura con informes de errores

Para comprobar el estado del servicio de Bluetooth con dumpsys, usa el siguiente comando:

adb shell dumpsys bluetooth_manager

De forma predeterminada, todos los mensajes de registro tienen el nivel de seguimiento 2. Para obtener más información sobre los niveles de registro y cambiar los niveles de registro para diferentes perfiles, consulta system/bt/conf/bt_stack.conf.

Para extraer los registros de búsqueda del informe de errores, usa la secuencia de comandos btsnooz.

  1. Obtén btsnooz.py.
  2. Extrae la versión de texto del informe de errores.
  3. Ejecuta btsnooz.py en la versión de texto del informe de errores:
    btsnooz.py BUG_REPORT.txt > BTSNOOP.log
    .

Depura con registros

En Android 4.4 y versiones posteriores, puedes recopilar manualmente los registros de BTSnoop, que se parecen al formato de snoop en RFC 1761. Estos registros capturan los paquetes de la interfaz de controlador de host (HCI). Para la mayoría de los dispositivos Android, los registros se almacenan en data/misc/bluetooth/logs.

Por motivos de privacidad, BTSnoop siempre activo y "en memoria" solo registra información y eventos no personales. Para registrar todos los datos, el usuario debe habilitar el espionaje de Bluetooth HCI de la siguiente manera:

  1. Habilita Opciones para desarrolladores en el dispositivo.
  2. En el menú Opciones para desarrolladores, activa el botón de activación Habilitar registro de búsqueda de HCI de Bluetooth.
  3. Reinicia el Bluetooth para que se apliquen los registros.