ยืนยันและแก้ไขข้อบกพร่อง

ใช้เครื่องมือที่มีให้ใน เพื่อยืนยันและแก้ไขข้อบกพร่องสแต็กบลูทูธ AOSP และการทดสอบของ Bluetooth Special Interest Group (SIG)

ทดสอบและยืนยัน

ในการทดสอบสแต็กบลูทูธ AOSP ให้การทดสอบ 1 หน่วยผสมกัน การทดสอบ CTS และเครื่องมือสำหรับชุดปรับแต่งโปรไฟล์บลูทูธ

การทดสอบหน่วยใน AOSP

AOSP มีการทดสอบการทำงานและหน่วยสำหรับค่าเริ่มต้น สแต็กบลูทูธ การทดสอบเหล่านี้อยู่ใน /packages/modules/Bluetooth/system/test/ หากต้องการเรียกใช้การทดสอบ AOSP ให้ทำตามขั้นตอนต่อไปนี้

  1. หยุดรันไทม์ของ Android โดยทำดังนี้
    adb shell stop
  2. จากไดเรกทอรีทดสอบ ให้เรียกใช้ไฟล์ปฏิบัติการของ Shell และ รวมตัวเลือกเฉพาะในกรณีที่คุณต้องการเรียกใช้ชุดทดสอบหรือชุดทดสอบเฉพาะ ดังนี้
    ./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
  3. เมื่อการทดสอบเสร็จสิ้น ให้เปิดใช้รันไทม์ของ Android อีกครั้งดังนี้
    adb shell start

ดูรายชื่อการทดสอบได้ใน /packages/modules/Bluetooth/system/test/README.md

ชุดปรับแต่งโปรไฟล์

Bluetooth SIG มี Bluetooth Profile Tuning Suite (PTS) เครื่องมือทดสอบความสามารถในการทำงานร่วมกันของโปรโตคอลและโปรไฟล์ สำหรับข้อมูลเพิ่มเติม โปรดดู เว็บไซต์ Bluetooth Profile Tuning Suite

การทดสอบ CTS

ชุดเครื่องมือทดสอบความเข้ากันได้ (CTS) มีการทดสอบสแต็กบลูทูธ สถานที่เหล่านี้อยู่ใน cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth

ตัวเลือกการแก้ไขข้อบกพร่อง

AOSP นำเสนอวิธีต่างๆ ในการแก้ไขข้อบกพร่องของอุปกรณ์ กลุ่มบลูทูธ รวมถึงบันทึกและรายงานข้อบกพร่อง วิธีการเหล่านี้อาจ ใช้ไม่ได้กับปัญหาที่ทำซ้ำไม่ได้หรือปัญหาด้านเสียง ซึ่งอาจได้รับผลกระทบจากหลายส่วนของแพลตฟอร์มและอุปกรณ์

การแก้ไขข้อบกพร่องด้วยรายงานข้อบกพร่อง

วิธีตรวจสอบสถานะบริการบลูทูธโดยใช้ dumpsys ให้ใช้คำสั่งต่อไปนี้

adb shell dumpsys bluetooth_manager

โดยค่าเริ่มต้น ข้อความในบันทึกทั้งหมดจะเป็นการติดตามระดับ 2 เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับระดับการบันทึกและเปลี่ยนแปลงระดับการบันทึก สำหรับโปรไฟล์ต่างๆ ให้ดูที่ system/bt/conf/bt_stack.conf

หากต้องการดึงบันทึกการสอดแนมจากรายงานข้อบกพร่อง ให้ใช้ สคริปต์ btsnooz

  1. สมัคร btsnooz.py
  2. ดึงเวอร์ชันข้อความของรายงานข้อบกพร่อง
  3. เรียกใช้ btsnooz.py ในเวอร์ชันข้อความของรายงานข้อบกพร่อง: วันที่
    btsnooz.py BUG_REPORT.txt > BTSNOOP.log

การแก้ไขข้อบกพร่องด้วยบันทึก

ใน Android 4.4 ขึ้นไป คุณสามารถรวบรวมบันทึกของ BTSnoop ได้ด้วยตนเอง ซึ่งคล้ายกับรูปแบบ Snoop ใน RFC 1761 บันทึกเหล่านี้จะบันทึก แพ็กเก็ตอินเทอร์เฟซโฮสต์ตัวควบคุม (HCI) สำหรับอุปกรณ์ Android ส่วนใหญ่ บันทึกจะจัดเก็บอยู่ใน data/misc/bluetooth/logs

เปิดตลอดเวลา "ในหน่วยความจำ" เพื่อความเป็นส่วนตัว บันทึกเฉพาะ BTSnoop ข้อมูลและกิจกรรมที่ไม่ใช่ข้อมูลส่วนบุคคล ในการบันทึกข้อมูลทั้งหมด ผู้ใช้ต้อง เพื่อเปิดใช้ HCI Snoop ของบลูทูธโดยทำตามขั้นตอนต่อไปนี้

  1. เปิดใช้ตัวเลือกสำหรับนักพัฒนาแอปในอุปกรณ์
  2. ในเมนูตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์ ให้เปิดใช้งาน เปิด/ปิดเปิดใช้บันทึก HCI Snoop ของบลูทูธ
  3. รีสตาร์ทบลูทูธเพื่อให้การบันทึกมีผล