Memverifikasi dan Men-debug

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

Menguji dan memverifikasi

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

Tes unit di AOSP

AOSP mencakup pengujian fungsional dan unit untuk tumpukan Bluetooth default. Tes ini terletak di /packages/modules/Bluetooth/system/test/ . Untuk menjalankan tes AOSP, lakukan hal berikut:

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

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

Rangkaian Uji Komunikasi Android

Android Comms Test Suite (ACTS) melakukan pengujian otomatis terhadap tumpukan konektivitas, seperti Wi-Fi, Bluetooth, dan layanan seluler. Alat pengujian memerlukan adb dan python, dan dapat ditemukan di tools/test/connectivity/acts .

Tes ACTS untuk Bluetooth dan Bluetooth Hemat Energi masing-masing dapat ditemukan di tools/test/connectivity/acts_tests/tests/google/bt/ dan tools/test/connectivity/acts_tests/tests/google/ble/ .

Suite Penyetelan Profil

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

AOSP menyediakan alat tambahan untuk melengkapi Bluetooth PTS. Alat-alat ini terletak di tools/test/connectivity/acts_tests/tests/google/bt/pts/ .

Tes CTS

Compatibility Test Suite (CTS) mencakup pengujian untuk tumpukan Bluetooth. Ini terletak di cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth .

Opsi debug

AOSP menyediakan metode berbeda untuk men-debug tumpukan Bluetooth perangkat, termasuk log dan laporan bug. Metode ini mungkin tidak berfungsi untuk masalah yang tidak dapat direproduksi atau untuk masalah audio, yang dapat dipengaruhi oleh beberapa bagian platform dan perangkat.

Debugging dengan laporan bug

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

adb shell dumpsys bluetooth_manager

Secara default, semua pesan log adalah jejak tingkat 2. Untuk mengetahui lebih lanjut tentang tingkat logging dan mengubah tingkat logging untuk profil yang berbeda, lihat di system/bt/conf/bt_stack.conf .

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

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

Men-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 menangkap 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 perlu mengaktifkan pengintaian Bluetooth HCI dengan melakukan hal berikut:

  1. Aktifkan opsi Pengembang di perangkat.
  2. Di menu Opsi pengembang , aktifkan sakelar Aktifkan log pengintaian Bluetooth HCI .
  3. Mulai ulang Bluetooth agar pencatatan dapat diterapkan.