Для проверки и отладки стека Bluetooth используйте инструменты, предоставленные в AOSP, и тесты Bluetooth Special Interest Group (SIG).
Тест и проверка
Для тестирования стека Bluetooth AOSP предоставляет набор модульных тестов, тестов CTS и инструментов для Bluetooth Profile Tuning Suite (PTS).
Модульные тесты в AOSP
AOSP включает функциональные и модульные тесты для стандартного стека Bluetooth. Эти тесты находятся в /packages/modules/Bluetooth/system/test/
. Чтобы запустить тесты AOSP, выполните следующие действия:
Остановите среду выполнения Android:
adb shell stop
Из тестового каталога запустите исполняемый файл оболочки и включите параметры, если вы хотите запустить определенный тест или набор тестов:
./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
После завершения тестов снова включите среду выполнения Android:
adb shell start
Список названий тестов можно найти в /packages/modules/Bluetooth/system/test/README.md
.
Пакет настройки профиля
Группа Bluetooth SIG предоставляет Bluetooth PTS — инструмент тестирования совместимости протоколов и профилей. Подробнее см. на сайте Bluetooth Profile Tuning Suite .
тесты CTS
Набор тестов совместимости (CTS) включает тесты для стека Bluetooth. Они находятся в каталоге cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth
.
Параметры отладки
AOSP предоставляет различные методы отладки Bluetooth-стека устройства, включая журналы и отчёты об ошибках. Эти методы могут не сработать в случае проблем, которые невозможно воспроизвести, или проблем со звуком, которые могут быть вызваны различными компонентами платформы и устройства.
Отладка с помощью отчетов об ошибках
Чтобы проверить состояние службы Bluetooth с помощью dumpsys
, используйте следующую команду:
adb shell dumpsys bluetooth_manager
По умолчанию все сообщения журнала имеют уровень трассировки 2. Чтобы узнать больше об уровнях журналирования и изменить уровни журналирования для различных профилей, загляните в system/bt/conf/bt_stack.conf
.
Для извлечения журналов слежки из отчета об ошибке используйте скрипт btsnooz
.
Получите
btsnooz.py
.Извлеките текстовую версию отчета об ошибке.
Запустите
btsnooz.py
для текстовой версии отчета об ошибке:btsnooz.py BUG_REPORT.txt > BTSNOOP.log
Отладка с помощью журналов
В Android 4.4 и более поздних версиях можно вручную собирать логи BTSnoop, которые напоминают формат snoop из RFC 1761. Эти логи фиксируют пакеты интерфейса хост-контроллера (HCI). Для большинства устройств Android логи хранятся в data/misc/bluetooth/logs
.
В целях конфиденциальности постоянно работающий в оперативной памяти BTSnoop регистрирует только неперсональную информацию и события. Чтобы регистрировать все данные, пользователю необходимо включить функцию Bluetooth HCI Snoop, выполнив следующие действия:
Включите параметры разработчика на устройстве.
В меню параметров разработчика активируйте переключатель Включить журнал отслеживания Bluetooth HCI .
Перезапустите Bluetooth, чтобы изменения вступили в силу.