คีย์เวิร์ด: AiAssisted,release16,androidconnectivity,bluetooth,category:AndroidConnectivity,docType:Guide
ตั้งแต่ Android 14 เป็นต้นไป เฟรมเวิร์ก Android จะมีบริการ Generic Attribute (GATT) ที่เรียกว่าบริการข้อมูล Android (Android Information Service หรือ AIS) ซึ่งช่วยให้อุปกรณ์บลูทูธอ่านระดับ API ของ Android ในฐานะที่เป็นลักษณะ GATT ของบริการได้ บริการนี้ช่วยให้ผู้ผลิตอุปกรณ์บลูทูธทราบว่าอุปกรณ์ต่อพ่วงบลูทูธ จับคู่กับอุปกรณ์ส่วนกลางที่ใช้ระบบปฏิบัติการ Android หรือไม่ และจัดการตรรกะเฉพาะทางตามระดับ API
บริการข้อมูล Android (AIS)
AIS เป็นบริการ GATT มาตรฐานและมีอินสแตนซ์ของ AIS ในอุปกรณ์ได้เพียงอินสแตนซ์เดียว
UUID ของบริการหลักคือ e73e0001-ef1b-4e74-8291-2e4f3164f3b5
ลักษณะระดับ API ของ Android (UUID:
e73e0002-ef1b-4e74-8291-2e4f3164f3b5
) มีระดับ API ของอุปกรณ์เป็นจำนวนเต็มแบบ 32 บิตที่ไม่ใช่ค่าลบในรูปแบบไบนารี (little-endian) ค่าของลักษณะระดับ API ของ Android มีความยาว 4 อ็อกเทต (เช่น ระดับ API 36 คือ 0x24_00_00_00
) เมื่ออุปกรณ์ค้นพบได้ ค่าลักษณะระดับ API ของ Android จะอ่านได้โดยไม่ต้องมีการตรวจสอบสิทธิ์หรือการให้สิทธิ์
เมื่ออุปกรณ์ไม่สามารถค้นพบได้ ลักษณะระดับ API ของ Android จะ
อ่านได้เฉพาะเมื่อมีการตรวจสอบสิทธิ์และการให้สิทธิ์
ค้นพบบริการ
อุปกรณ์บลูทูธอยู่ในบทบาทไคลเอ็นต์ GATT และอุปกรณ์ที่ใช้ Android อยู่ในบทบาทเซิร์ฟเวอร์ หากต้องการค้นหา AIS และอ่านระดับ API ของ Android อุปกรณ์ Bluetooth จะใช้ขั้นตอนโปรไฟล์ GATT เช่น ขั้นตอน Service Discovery หลัก, การค้นหาลักษณะ และการอ่านค่าลักษณะ ดูรายละเอียดเกี่ยวกับขั้นตอนเหล่านี้ได้ที่ข้อกำหนดเฉพาะของโปรไฟล์ GATT
ระดับ API กำหนดโดยพร็อพเพอร์ตี้ของระบบ ro.build.version.sdk
หากค้นพบบริการหลักไม่ได้ แสดงว่าไม่ได้กำหนดพร็อพเพอร์ตี้ของระบบ หรือตั้งค่าเป็นค่าว่าง หรือระบบปฏิบัติการโฮสต์ไม่ใช่ Android
การตรวจสอบความถูกต้อง
หากต้องการยืนยันว่าค้นพบ AIS ได้ ให้เรียกใช้การทดสอบด้วยตนเองโดยจับคู่อุปกรณ์ต่อพ่วงบลูทูธกับอุปกรณ์ที่ใช้ Android แล้วค้นหา UUID ของบริการ AIS ในบริการหลักที่ค้นพบ