Hồ sơ thiết bị đồng hành, được giới thiệu trong Android 12, là một tính năng cho phép các ứng dụng đồng hành yêu cầu một bộ quyền dành riêng cho loại thiết bị đồng hành, chẳng hạn như đồng hồ thông minh. Việc sử dụng cấu hình thiết bị đồng hành sẽ đơn giản hóa quy trình đăng ký bằng cách cho phép ứng dụng hiển thị một lời nhắc duy nhất cho người dùng trên thiết bị di động của họ để yêu cầu một nhóm quyền xác định thay vì nhiều lời nhắc yêu cầu quyền riêng lẻ. Điều này có thể mang lại trải nghiệm thiết lập hợp lý hơn và tỷ lệ chọn tham gia tốt hơn cho các ứng dụng đồng hành.
Để sử dụng cấu hình thiết bị đồng hành, ứng dụng đồng hành phải đáp ứng các yêu cầu sau:
- Quản lý thiết bị đồng hành (ví dụ: đồng hồ thông minh).
- Có các tính năng của ứng dụng hoặc gọi các API Android yêu cầu tất cả các quyền được xác định cho hồ sơ thiết bị đồng hành.
Mỗi hồ sơ thiết bị đồng hành tương ứng với một vai trò Android. Để biết thêm thông tin về các quyền và vai trò Android tương ứng của từng cấu hình, hãy xem cấu hình thiết bị đồng hành cho các ứng dụng của bên thứ ba .
Để biết thêm thông tin về các thiết bị đồng hành, hãy xem Ghép nối thiết bị đồng hành .
Hành vi của thiết bị
Phần này mô tả hoạt động của thiết bị khi sử dụng cấu hình thiết bị đồng hành.
Khi người dùng chấp nhận yêu cầu của ứng dụng để tạo liên kết với thiết bị đồng hành, dịch vụ CompanionDeviceManager
(CDM) sẽ chỉ định vai trò hồ sơ thiết bị (ví dụ: đồng hồ) cho ứng dụng đồng hành, cấp tất cả các quyền được xác định cho vai trò hồ sơ được chỉ định đó. Hình 1 hiển thị ví dụ về ứng dụng yêu cầu quyền đối với cấu hình thiết bị COMPANION_DEVICE_WATCH
.
Hình 1. Hộp thoại yêu cầu quyền đối với hồ sơ thiết bị đồng hồ.
Khi người dùng xóa dữ liệu gói trong Cài đặt hoặc xóa tất cả thiết bị trong ứng dụng đồng hành, CDM sẽ thu hồi hồ sơ trong khi ứng dụng không chạy ở nền trước cũng như không chạy dịch vụ trên nền trước. Việc thu hồi hồ sơ cũng thu hồi tất cả các quyền đã xác định cho hồ sơ.
Sau khi người dùng chấp nhận yêu cầu cấp quyền của ứng dụng cho một cấu hình thiết bị cụ thể, người dùng có thể thu hồi các quyền riêng lẻ đã được cấp. Khi người dùng thu hồi quyền, ứng dụng vẫn được liên kết với thiết bị đồng hành nhưng một số tính năng nhất định có thể không khả dụng. Nếu cần có quyền để ứng dụng hoạt động thì ứng dụng phải yêu cầu quyền thông qua yêu cầu cấp phép thông thường.
Hồ sơ thiết bị đồng hành cho các ứng dụng của bên thứ ba
Xem hồ sơ
Hồ sơ đồng hồ được giới thiệu trong Android 12.
Bảng sau đây mô tả các quyền được xác định cho cấu hình thiết bị COMPANION_DEVICE_WATCH
và các yêu cầu để sử dụng chúng.
Quyền | Yêu cầu về thiết bị và ứng dụng đồng hành |
---|---|
Thông báoBIND_NOTIFICATION_LISTENER_SERVICE |
|
Phone |
|
SMS |
|
Contacts |
|
Calendar |
|
Nearby devices |
|
eSIM provisioning |
|
Managing ongoing calls |
|
Hồ sơ kính
Cấu hình Kính được giới thiệu trong Android 14.
Bảng sau đây mô tả các quyền được xác định cho cấu hình thiết bị COMPANION_DEVICE_GLASSES
và các yêu cầu để sử dụng chúng.
Quyền | Yêu cầu về thiết bị và ứng dụng đồng hành |
---|---|
Thông báoBIND_NOTIFICATION_LISTENER_SERVICE POST_NOTIFICATIONS |
|
Phone |
|
SMS |
|
Contacts |
|
Microphone |
|
Nearby devices |
|
Managing ongoing calls |
|
Thực hiện
Đối với các nhà phát triển bên thứ ba đang triển khai ứng dụng đồng hành yêu cầu hồ sơ DEVICE_PROFILE_WATCH
, hãy làm như sau:
Gọi phương thức
setDeviceProfile
.Truyền vào một hồ sơ (ví dụ:
DEVICE_PROFILE_WATCH
khi xây dựngAssociationRequest
.
Nhà sản xuất thiết bị bỏ qua việc hiển thị hộp thoại đồng ý của người dùng
Đối với các nhà sản xuất thiết bị triển khai ứng dụng đồng hành với một thiết bị cụ thể, hãy sử dụng các cấu hình hệ thống Android bắt buộc sau đây để chứng nhận ứng dụng đồng hành, cho phép ứng dụng bỏ qua việc hiển thị hộp thoại đồng ý của người dùng cho người dùng.
Truy xuất chứng chỉ bằng lệnh sau:
keytool -printcert -jarfile PATH/TO/APK
Thay thế tên gói và chứng chỉ như trong phần nhập mẫu sau trong tệp cấu hình:
<!-- A list of packages managing companion device(s) by the same manufacturers as the main device. It will not create the association without prompting if the association has been called multiple times in a short period. Note that config_companionDeviceManagerPackage and config_companionDeviceCerts are parallel arrays. --> <string-array name="config_companionDevicePackages" translatable="false"> <item>YOUR_COMPANION_APP_PACKAGE_NAME</item> </string-array> <!-- A list of SHA256 Certificates managing companion device(s) by the same manufacturers as the main device. It will fall back to showing a prompt if the association has been called multiple times in a short period. Note that config_companionDeviceCerts and config_companionDeviceManagerPackage are parallel arrays. Example: "1A:2B:3C:4D" --> <string-array name="config_companionDeviceCerts" translatable="false"> <item>YOUR_COMPANION_APP_CERTIFICATE</item> </string-array>
Sử dụng
AssociationRequest
để thực hiện yêu cầu liên kết tới một thiết bị đồng hành.
Thẩm định
Để kiểm tra hoạt động của tính năng cấu hình thiết bị đồng hành, hãy sử dụng các kiểm tra CTS trong cts/tests/tests/companion/
.