Profil perangkat pendamping, yang diperkenalkan di Android 12, adalah fitur yang memungkinkan aplikasi pendamping meminta serangkaian izin khusus untuk jenis perangkat pendamping, misalnya jam tangan pintar. Menggunakan profil perangkat pendamping menyederhanakan proses pendaftaran dengan memungkinkan aplikasi menampilkan satu perintah kepada pengguna di perangkat seluler mereka untuk meminta serangkaian izin yang ditentukan, bukan beberapa perintah yang meminta izin satu per satu. Hal ini memungkinkan pengalaman penyiapan yang lebih efisien dan tingkat keikutsertaan yang lebih baik untuk aplikasi pendamping.
Untuk menggunakan profil perangkat pendamping, aplikasi pendamping harus memenuhi persyaratan berikut:
- Kelola perangkat pendamping (misalnya, jam tangan pintar).
- Memiliki fitur aplikasi atau memanggil API Android yang memerlukan semua izin yang ditentukan untuk profil perangkat pendamping.
Setiap profil perangkat pendamping berhubungan dengan peran Android. Untuk informasi selengkapnya tentang izin dan peran Android terkait setiap profil, lihat profil perangkat pendamping untuk aplikasi pihak ketiga .
Untuk informasi selengkapnya tentang perangkat pendamping, lihat Memasangkan perangkat pendamping .
Perilaku perangkat
Bagian ini menjelaskan perilaku perangkat saat profil perangkat pendamping digunakan.
Saat pengguna menerima permintaan aplikasi untuk membuat pengaitan dengan perangkat pendamping, layanan CompanionDeviceManager
(CDM) akan menetapkan peran profil perangkat (misalnya, jam tangan) ke aplikasi pendamping, sehingga memberikan semua izin yang ditentukan untuk peran profil tertentu tersebut. Gambar 1 menunjukkan contoh aplikasi yang meminta izin untuk profil perangkat COMPANION_DEVICE_WATCH
.
Gambar 1. Dialog permintaan izin untuk profil perangkat jam tangan.
Saat pengguna menghapus paket data di Pengaturan atau menghapus semua perangkat di aplikasi pendamping, CDM akan mencabut profil saat aplikasi tidak berjalan di latar depan atau layanan latar depan sedang berjalan. Mencabut profil juga mencabut semua izin yang ditetapkan untuk profil tersebut.
Setelah pengguna menerima permintaan aplikasi untuk memberikan izin pada profil perangkat tertentu, pengguna dapat mencabut izin individual yang diberikan. Saat izin dicabut oleh pengguna, aplikasi tetap dikaitkan dengan perangkat pendamping namun fitur tertentu mungkin menjadi tidak tersedia. Jika izin diperlukan agar aplikasi dapat berfungsi, aplikasi harus meminta izin melalui permintaan izin normal.
Profil perangkat pendamping untuk aplikasi pihak ketiga
Tonton profil
Profil jam tangan diperkenalkan di Android 12.
Tabel berikut menjelaskan izin yang ditentukan untuk profil perangkat COMPANION_DEVICE_WATCH
dan persyaratan untuk menggunakannya.
Izin | Persyaratan aplikasi dan perangkat pendamping |
---|---|
PemberitahuanBIND_NOTIFICATION_LISTENER_SERVICE |
|
Phone |
|
SMS |
|
Contacts |
|
Calendar |
|
Nearby devices |
|
eSIM provisioning |
|
Managing ongoing calls |
|
Profil kacamata
Profil Kacamata diperkenalkan di Android 14.
Tabel berikut menjelaskan izin yang ditentukan untuk profil perangkat COMPANION_DEVICE_GLASSES
dan persyaratan untuk menggunakannya.
Izin | Persyaratan aplikasi dan perangkat pendamping |
---|---|
PemberitahuanBIND_NOTIFICATION_LISTENER_SERVICE POST_NOTIFICATIONS |
|
Phone |
|
SMS |
|
Contacts |
|
Microphone |
|
Nearby devices |
|
Managing ongoing calls |
|
Penerapan
Untuk pengembang pihak ketiga yang menerapkan aplikasi pendamping yang meminta profil DEVICE_PROFILE_WATCH
, lakukan hal berikut:
Panggil metode
setDeviceProfile
.Teruskan profil (misalnya,
DEVICE_PROFILE_WATCH
saat membuatAssociationRequest
.
Pabrikan perangkat tidak menampilkan dialog izin pengguna
Untuk produsen perangkat yang mengimplementasikan aplikasi pendamping dengan perangkat tertentu, gunakan konfigurasi sistem Android yang diperlukan berikut ini untuk mensertifikasi aplikasi pendamping, yang memungkinkan aplikasi melewati tampilan dialog izin pengguna untuk pengguna.
Ambil sertifikat menggunakan perintah berikut:
keytool -printcert -jarfile PATH/TO/APK
Ganti nama paket dan sertifikat seperti yang ditunjukkan pada contoh input berikut di file konfigurasi:
<!-- 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>
Gunakan
AssociationRequest
untuk membuat permintaan pengaitan ke satu perangkat pendamping.
Validasi
Untuk menguji perilaku fitur profil perangkat pendamping, gunakan pengujian CTS di cts/tests/tests/companion/
.