Cấu hình thiết bị đồng hành

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 .

Xem lời nhắc hộp thoại hồ sơ thiết bị

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áo

BIND_NOTIFICATION_LISTENER_SERVICE
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có màn hình có khả năng hiển thị thông báo (loại trừ các thiết bị sử dụng xúc giác thay vì màn hình)
  • Cung cấp trải nghiệm thông báo hướng tới người dùng, chẳng hạn như hiển thị thông báo điện thoại trên màn hình thiết bị đồng hành.
Phone
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có micrô và loa tích hợp cho phép đàm thoại bằng giọng nói
  • Có màn hình hiển thị thông tin người gọi
  • Cung cấp trải nghiệm gọi điện thoại hướng tới người dùng (ứng dụng đồng hành kết nối các cuộc gọi điện thoại)
SMS
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có màn hình hiển thị tin nhắn SMS
  • Cung cấp trải nghiệm SMS hướng tới người dùng
Contacts
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có màn hình hiển thị
  • Sử dụng thông tin liên hệ như một phần của trải nghiệm gọi điện hoặc nhắn tin
Calendar
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có màn hình hiển thị
  • Cung cấp trải nghiệm lịch hướng tới người dùng trên đồng hồ
Nearby devices
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có màn hình hiển thị
  • Cung cấp trải nghiệm ghép nối/kết nối hướng tới người dùng trên đồng hồ
eSIM provisioning
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có màn hình hiển thị
  • Cung cấp trải nghiệm hướng tới người dùng để quản lý các dịch vụ của người đăng ký từ nhà cung cấp dịch vụ trên đồng hồ
Managing ongoing calls
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có micrô và loa tích hợp cho phép đàm thoại bằng giọng nói
  • Có màn hình hiển thị thông tin người gọi
  • Cung cấp trải nghiệm gọi điện thoại hướng tới người dùng (ứng dụng đồng hành kết nối các cuộc gọi điện thoại)

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áo

BIND_NOTIFICATION_LISTENER_SERVICE

POST_NOTIFICATIONS
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có màn hình có khả năng hiển thị thông báo (loại trừ các thiết bị sử dụng xúc giác thay vì màn hình)
  • Cung cấp trải nghiệm thông báo hướng tới người dùng, chẳng hạn như hiển thị thông báo điện thoại trên màn hình thiết bị đồng hành.
  • Đăng thông báo qua điện thoại để quản lý thiết bị, chẳng hạn như khi thiết bị kính được kết nối hoặc khi một tính năng cụ thể được bật.
Phone
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có micrô và loa tích hợp cho phép đàm thoại bằng giọng nói
  • Có màn hình hiển thị thông tin người gọi
  • Cung cấp trải nghiệm gọi điện thoại hướng tới người dùng (ứng dụng đồng hành kết nối các cuộc gọi điện thoại)
SMS
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có màn hình hiển thị tin nhắn SMS
  • Cung cấp trải nghiệm SMS hướng tới người dùng
Contacts
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có màn hình hiển thị
  • Sử dụng thông tin liên hệ như một phần của trải nghiệm gọi điện hoặc nhắn tin
Microphone
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có màn hình hiển thị
  • Cung cấp trải nghiệm micrô hướng về phía người dùng trên kính
Nearby devices
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có màn hình hiển thị
  • Cung cấp trải nghiệm ghép nối/kết nối hướng tới người dùng trên kính
Managing ongoing calls
  • Là thiết bị được kết nối bằng Bluetooth và/hoặc Wi-Fi
  • Có micrô và loa tích hợp cho phép đàm thoại bằng giọng nói
  • Có màn hình hiển thị thông tin người gọi
  • Cung cấp trải nghiệm gọi điện thoại hướng tới người dùng (ứng dụng đồng hành kết nối các cuộc gọi điện thoại)

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:

  1. Gọi phương thức setDeviceProfile .

  2. Truyền vào một hồ sơ (ví dụ: DEVICE_PROFILE_WATCH khi xây dựng AssociationRequest .

Đố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.

  1. Truy xuất chứng chỉ bằng lệnh sau:

    keytool  -printcert -jarfile PATH/TO/APK
    
  2. 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>
    
  3. 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/ .