Profil Perangkat Pendamping

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 .

Tonton prompt dialog profil perangkat

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
Pemberitahuan

BIND_NOTIFICATION_LISTENER_SERVICE
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar yang mampu menampilkan notifikasi (tidak termasuk perangkat yang menggunakan haptics alih-alih layar)
  • Memberikan pengalaman notifikasi yang dapat dilihat pengguna, misalnya menampilkan notifikasi ponsel di layar perangkat pendamping.
Phone
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki mikrofon dan speaker internal yang memungkinkan percakapan suara
  • Memiliki layar yang menampilkan info penelepon
  • Memberikan pengalaman panggilan telepon langsung kepada pengguna (aplikasi pendamping menjembatani panggilan telepon)
SMS
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar yang menampilkan pesan SMS
  • Memberikan pengalaman SMS yang dihadapi pengguna
Contacts
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki tampilan layar
  • Menggunakan informasi kontak sebagai bagian dari pengalaman menelepon atau mengirim pesan
Calendar
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki tampilan layar
  • Memberikan pengalaman kalender yang dapat dilihat pengguna di jam tangan
Nearby devices
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki tampilan layar
  • Memberikan pengalaman memasangkan/menghubungkan langsung ke pengguna pada jam tangan
eSIM provisioning
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki tampilan layar
  • Memberikan pengalaman langsung kepada pengguna yang mengelola layanan pelanggan dari operator di jam tangan
Managing ongoing calls
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki mikrofon dan speaker internal yang memungkinkan percakapan suara
  • Memiliki layar yang menampilkan info penelepon
  • Memberikan pengalaman panggilan telepon langsung kepada pengguna (aplikasi pendamping menjembatani panggilan telepon)

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
Pemberitahuan

BIND_NOTIFICATION_LISTENER_SERVICE

POST_NOTIFICATIONS
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar yang mampu menampilkan notifikasi (tidak termasuk perangkat yang menggunakan haptics alih-alih layar)
  • Memberikan pengalaman notifikasi yang dapat dilihat pengguna, misalnya menampilkan notifikasi ponsel di layar perangkat pendamping.
  • Memposting pemberitahuan telepon untuk pengelolaan perangkat, misalnya, saat perangkat kacamata tersambung atau saat fitur tertentu diaktifkan.
Phone
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki mikrofon dan speaker internal yang memungkinkan percakapan suara
  • Memiliki layar yang menampilkan info penelepon
  • Memberikan pengalaman panggilan telepon langsung kepada pengguna (aplikasi pendamping menjembatani panggilan telepon)
SMS
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar yang menampilkan pesan SMS
  • Memberikan pengalaman SMS yang dihadapi pengguna
Contacts
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki tampilan layar
  • Menggunakan informasi kontak sebagai bagian dari pengalaman menelepon atau mengirim pesan
Microphone
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki tampilan layar
  • Memberikan pengalaman mikrofon yang menghadap pengguna pada kacamata
Nearby devices
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki tampilan layar
  • Memberikan pengalaman memasangkan/menghubungkan kacamata secara langsung kepada pengguna
Managing ongoing calls
  • Jadilah perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki mikrofon dan speaker internal yang memungkinkan percakapan suara
  • Memiliki layar yang menampilkan info penelepon
  • Memberikan pengalaman panggilan telepon langsung kepada pengguna (aplikasi pendamping menjembatani panggilan telepon)

Penerapan

Untuk pengembang pihak ketiga yang menerapkan aplikasi pendamping yang meminta profil DEVICE_PROFILE_WATCH , lakukan hal berikut:

  1. Panggil metode setDeviceProfile .

  2. Teruskan profil (misalnya, DEVICE_PROFILE_WATCH saat membuat AssociationRequest .

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.

  1. Ambil sertifikat menggunakan perintah berikut:

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