Bluetooth

Bluetooth là mô-đun Mainline tùy chọn bắt đầu từ Android 13. Mô-đun Bluetooth Mainline nhằm mục đích cung cấp trải nghiệm Bluetooth nhất quán, chất lượng cao cho tất cả người dùng Android.

Động lực

Động lực chính đằng sau mô-đun Bluetooth là cung cấp trải nghiệm chất lượng cao cho đối tác, người dùng và nhà phát triển ứng dụng. Chúng tôi sẽ đạt được điều này theo một số cách chính:

  1. Gửi các bản cập nhật nhanh hơn và thường xuyên hơn với các tính năng mới, sửa lỗi và khả năng tương tác cũng như các bản sửa lỗi bảo mật.
  2. Giảm công việc lặp đi lặp lại cho đối tác
    1. Giảm chi phí khởi động lại codebase hàng năm.
    2. Giảm chi phí triển khai OTA cho các thiết bị cũ.
  3. Giảm phân mảnh và tạo trải nghiệm nhất quán cho nhà phát triển ứng dụng và người dùng
  4. Cải thiện bảo mật toàn cầu trong hệ sinh thái Android. Phần lớn các lỗ hổng bảo mật của Android liên quan đến Bluetooth..

Định dạng gói

Gói này là một APEX chứa APK Bluetooth (hiện được xác định trong packages/modules/Bluetooth/android/app ), thư viện gốc của chúng tôi ( libbluetooth.solibbluetooth_jni.so ), API của chúng tôi (trong packages/modules/Bluetooth/framework/java/android/bluetooth ) và giao diện HIDL của chúng tôi.

Ranh giới mô-đun

Kiến trúc mô-đun Bluetooth chính tuyến

Hình 1. Ranh giới mô-đun Bluetooth

Chúng tôi đang di chuyển tất cả các kho lưu trữ hiện có của mình thành một kho lưu trữ duy nhất trong system/bt . Hình 1 thể hiện các thư mục hiện tại sẽ bao gồm mô-đun của chúng ta.

phụ thuộc

Mô-đun Bluetooth có các phần phụ thuộc vào những điều sau:

  • Việc sử dụng API @hide đến và đi sẽ được dọn sạch
  • Cần có thư viện cho APK Bluetooth, libbluetooth.solibbluetooth_jni.so