Memverifikasi dan men-debug

Untuk memverifikasi dan men-debug stack Bluetooth, gunakan alat yang disediakan di AOSP dan pengujian Bluetooth Special Interest Group (SIG).

Menguji dan memverifikasi

Untuk menguji stack Bluetooth, AOSP menyediakan campuran pengujian unit, pengujian CTS, dan alat untuk Bluetooth Profile Tuning Suite.

Pengujian unit di AOSP

AOSP menyertakan pengujian fungsional dan unit untuk stack Bluetooth default. Pengujian ini terletak di /packages/modules/Bluetooth/system/test/. Untuk menjalankan pengujian AOSP, lakukan hal berikut:

  1. Hentikan runtime Android:
    adb shell stop
  2. Dari direktori pengujian, jalankan file yang dapat dieksekusi shell dan sertakan opsi jika Anda ingin menjalankan pengujian atau rangkaian pengujian tertentu:
    ./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
  3. Setelah pengujian selesai, aktifkan kembali runtime Android:
    adb shell start

Daftar nama pengujian dapat ditemukan di /packages/modules/Bluetooth/system/test/README.md.

Profile Tuning Suite

Bluetooth SIG menyediakan Bluetooth Profile Tuning Suite (PTS), alat pengujian untuk interoperabilitas protokol dan profil. Untuk informasi selengkapnya, lihat situs Bluetooth Profile Tuning Suite.

Pengujian CTS

Compatibility Test Suite (CTS) menyertakan pengujian untuk stack Bluetooth. Fungsi ini terletak di cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth.

Opsi proses debug

AOSP menyediakan berbagai metode proses debug stack Bluetooth perangkat, termasuk log dan laporan bug. Metode ini mungkin tidak berfungsi untuk masalah yang tidak dapat direproduksi atau untuk masalah audio, yang dapat terpengaruh oleh beberapa bagian platform dan perangkat.

Melakukan proses debug dengan laporan bug

Untuk memeriksa status layanan Bluetooth menggunakan dumpsys, gunakan perintah berikut:

adb shell dumpsys bluetooth_manager

Secara default, semua pesan log adalah level rekaman aktivitas 2. Untuk mengetahui lebih lanjut level logging dan mengubah level logging untuk profil yang berbeda, lihat system/bt/conf/bt_stack.conf.

Untuk mengekstrak log snoop dari laporan bug, gunakan skrip btsnooz.

  1. Mendapatkan btsnooz.py.
  2. Ekstrak versi teks laporan bug.
  3. Jalankan btsnooz.py pada versi teks laporan bug:
    btsnooz.py BUG_REPORT.txt > BTSNOOP.log

Melakukan proses debug dengan log

Di Android 4.4 dan yang lebih baru, Anda dapat mengumpulkan log BTSnoop secara manual, yang menyerupai format snoop di RFC 1761. Log ini merekam paket Host Controller Interface (HCI). Untuk sebagian besar perangkat Android, log disimpan di data/misc/bluetooth/logs.

Untuk alasan privasi, BTSnoop "dalam memori" yang selalu aktif hanya mencatat informasi dan peristiwa non-pribadi. Untuk mencatat semua data, pengguna harus mengaktifkan pengintaian HCI Bluetooth dengan melakukan hal berikut:

  1. Aktifkan Opsi developer di perangkat.
  2. Di menu Opsi developer, aktifkan tombol Aktifkan log pengintaian HCI Bluetooth.
  3. Mulai ulang Bluetooth agar logging diterapkan.