Xác minh và gỡ lỗi

Để xác minh và gỡ lỗi ngăn xếp Bluetooth, hãy dùng các công cụ được cung cấp trong Các thử nghiệm của AOSP và Nhóm quan tâm đặc biệt về Bluetooth (SIG).

Kiểm tra và xác minh

Để kiểm thử ngăn xếp Bluetooth, AOSP cung cấp một kết hợp các bài kiểm thử đơn vị, Các bài kiểm tra CTS (Bộ kiểm tra tính tương thích) và công cụ dành cho Bộ điều chỉnh cấu hình Bluetooth.

Kiểm thử đơn vị trong AOSP (Dự án nguồn mở Android)

AOSP bao gồm các bài kiểm thử chức năng và kiểm thử đơn vị cho mặc định Ngăn xếp Bluetooth. Các chương trình kiểm thử này nằm ở /packages/modules/Bluetooth/system/test/. Để chạy các bài kiểm thử AOSP, hãy làm như sau:

  1. Dừng Android Runtime:
    adb shell stop
  2. Trong thư mục kiểm thử, hãy chạy tệp thực thi shell và bao gồm các tuỳ chọn nếu bạn muốn chạy một bộ kiểm thử hoặc bộ kiểm thử cụ thể:
    ./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
  3. Khi kiểm thử hoàn tất, hãy bật lại Android Runtime:
    adb shell start

Bạn có thể xem danh sách tên kiểm thử trong /packages/modules/Bluetooth/system/test/README.md.

Bộ công cụ tinh chỉnh hồ sơ

Bluetooth SIG cung cấp Bộ điều chỉnh hồ sơ Bluetooth (PTS), một công cụ kiểm tra khả năng tương tác của giao thức và hồ sơ. Để biết thêm thông tin, hãy xem Bộ công cụ tinh chỉnh hồ sơ Bluetooth.

Bài kiểm thử CTS

Bộ kiểm tra tính tương thích (CTS) bao gồm các bài kiểm thử ngăn xếp Bluetooth. Các cơ sở này nằm ở cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth.

Tuỳ chọn gỡ lỗi

AOSP cung cấp nhiều phương thức gỡ lỗi Ngăn xếp Bluetooth, bao gồm cả nhật ký và báo cáo lỗi. Những phương pháp này có thể không hoạt động đối với các vấn đề không thể tái tạo được hoặc các vấn đề về âm thanh, có thể chịu ảnh hưởng của nhiều phần của nền tảng và thiết bị.

Gỡ lỗi bằng báo cáo lỗi

Cách kiểm tra trạng thái của dịch vụ Bluetooth bằng dumpsys: hãy dùng lệnh sau:

adb shell dumpsys bluetooth_manager

Theo mặc định, tất cả thông điệp nhật ký đều là dấu vết cấp 2. Để tìm hiểu thêm về cấp độ ghi nhật ký và thay đổi cấp độ ghi nhật ký để xem các hồ sơ khác nhau, hãy tìm trong system/bt/conf/bt_stack.conf.

Để trích xuất nhật ký theo dõi từ báo cáo lỗi, hãy sử dụng Tập lệnh btsnooz.

  1. Tải btsnooz.py.
  2. Trích xuất phiên bản văn bản của báo cáo lỗi.
  3. Chạy btsnooz.py trên phiên bản văn bản của báo cáo lỗi:
    btsnooz.py BUG_REPORT.txt > BTSNOOP.log

Gỡ lỗi bằng nhật ký

Trong Android 4.4 trở lên, bạn có thể thu thập nhật ký BTSnoop theo cách thủ công, tương tự với định dạng snoop trong RFC 1761. Các nhật ký này ghi lại Gói Giao diện trình điều khiển máy chủ (HCI). Đối với hầu hết các thiết bị Android, nhật ký được lưu trữ trong data/misc/bluetooth/logs.

Vì lý do bảo mật, chế độ luôn bật, "trong bộ nhớ" Nhật ký chỉ dành cho BTSnoop thông tin và sự kiện không mang tính cá nhân. Để ghi nhật ký tất cả dữ liệu, người dùng cần bật Bluetooth HCI snoop bằng cách làm như sau:

  1. Bật Tuỳ chọn cho nhà phát triển trên thiết bị.
  2. Trong trình đơn Tuỳ chọn cho nhà phát triển, hãy kích hoạt Bật nhật ký snoop Bluetooth HCI.
  3. Hãy khởi động lại Bluetooth để tính năng ghi nhật ký có hiệu lực.