บลูทูธ

Bluetooth เป็นโมดูลเสริม Mainline ที่เริ่มต้นด้วย Android 13 โมดูล Bluetooth Mainline มีจุดมุ่งหมายเพื่อมอบประสบการณ์ Bluetooth คุณภาพสูงที่สม่ำเสมอให้กับผู้ใช้ Android ทุกคน

แรงจูงใจ

แรงจูงใจหลักเบื้องหลังโมดูล Bluetooth คือการมอบประสบการณ์คุณภาพสูงแก่พันธมิตร ผู้ใช้ และนักพัฒนาแอป เราจะบรรลุเป้าหมายนี้ด้วยวิธีสำคัญบางประการ:

  1. จัดส่งการอัปเดตเร็วขึ้นและบ่อยขึ้นด้วยฟีเจอร์ใหม่ การแก้ไขจุดบกพร่องและการทำงานร่วมกัน และการแก้ไขด้านความปลอดภัย
  2. ลดการทำงานซ้ำซ้อนสำหรับคู่ค้า
    1. ลดค่าใช้จ่ายในการรีเบสโค้ดเบสทุกปี
    2. ลดค่าใช้จ่ายในการเปิดตัว OTA ไปยังอุปกรณ์รุ่นเก่า
  3. ลดการกระจายตัวและสร้างประสบการณ์ที่สอดคล้องกันสำหรับนักพัฒนาแอปและผู้ใช้
  4. ปรับปรุงความปลอดภัยระดับโลกภายในระบบนิเวศของ Android ช่องโหว่ด้านความปลอดภัยของ Android ส่วนใหญ่เกี่ยวข้องกับ Bluetooth

รูปแบบแพ็คเกจ

แพ็คเกจนี้เป็น APEX ที่มี Bluetooth APK (ปัจจุบันกำหนดไว้ใน packages/modules/Bluetooth/android/app ), ไลบรารีดั้งเดิมของเรา ( libbluetooth.so และ libbluetooth_jni.so ), API ของเรา (ภายใต้ packages/modules/Bluetooth/framework/java/android/bluetooth ) และอินเทอร์เฟซ HIDL ของเรา

ขอบเขตโมดูล

สถาปัตยกรรมโมดูลบลูทูธเมนไลน์

รูปที่ 1 ขอบเขตโมดูล Bluetooth

เรากำลังย้าย repos ที่มีอยู่ทั้งหมดไปไว้ในที่เดียวภายใต้ system/bt รูปที่ 1 แสดงถึงไดเร็กทอรีปัจจุบันที่จะประกอบด้วยโมดูลของเรา

การพึ่งพาอาศัยกัน

โมดูล Bluetooth มีการพึ่งพาดังต่อไปนี้:

  • การใช้งาน @hide API ขาเข้าและขาออกที่จะถูกล้างข้อมูล
  • ไลบรารีที่จำเป็นสำหรับ Bluetooth APK, libbluetooth.so และ libbluetooth_jni.so