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, smartwatch. Menggunakan pendamping profil perangkat menyederhanakan proses pendaftaran dengan memungkinkan aplikasi menampilkan satu permintaan kepada pengguna di perangkat seluler mereka untuk meminta serangkaian izin akses, alih-alih beberapa prompt yang meminta izin satu per satu. Hal ini dapat memungkinkan pengalaman penyiapan yang lebih sederhana dan rasio keikutsertaan yang lebih baik untuk aplikasi pendamping.

Untuk menggunakan profil perangkat pendamping, aplikasi pendamping harus memenuhi persyaratan berikut persyaratan:

  • Mengelola perangkat pendamping (misalnya, smartwatch).
  • Memiliki fitur aplikasi atau memanggil API Android yang memerlukan semua izin yang ditentukan untuk profil perangkat pendamping.

Setiap profil perangkat pendamping sesuai dengan peran Android. Untuk selengkapnya informasi izin dan peran Android yang sesuai untuk setiap lihat profil perangkat pendamping untuk aplikasi pihak ketiga.

Untuk mengetahui informasi selengkapnya tentang perangkat pendamping, lihat Penyambungan perangkat pendamping.

Perilaku perangkat

Bagian ini menjelaskan perilaku perangkat saat profil perangkat pendamping digunakan.

Saat pengguna menyetujui permintaan aplikasi untuk membuat atribusi dengan pendamping perangkat, CompanionDeviceManager (CDM) menetapkan peran profil perangkat (misalnya, smartwatch) ke pendamping aplikasi, yang memberikan semua izin akses yang didefinisikan untuk peran profil tersebut. Gambar 1 menunjukkan contoh aplikasi yang meminta izin untuk COMPANION_DEVICE_WATCH profil perangkat Anda.

Dialog dialog profil perangkat smartwatch

Gambar 1. Dialog yang meminta izin untuk profil perangkat smartwatch.

Jika pengguna menghapus data paket di Setelan atau menghapus semua di aplikasi pendamping, CDM akan mencabut profil sementara aplikasi tidak berjalan di latar depan atau memiliki latar depan dan layanan berjalan. Mencabut profil juga akan mencabut semua izin akses untuk profil.

Setelah pengguna menyetujui permintaan aplikasi untuk memberikan izin bagi di profil perangkat, pengguna dapat mencabut izin akses individu yang diberikan. Jika izin dicabut oleh pengguna, aplikasi akan tetap dikaitkan dengan perangkat pendamping tetapi fitur tertentu mungkin tidak tersedia. Jika diperlukan agar aplikasi dapat berfungsi, aplikasi harus meminta izin izin akses melalui permintaan izin.

Profil perangkat pendamping untuk aplikasi pihak ketiga

Lihat profil

Profil smartwatch diperkenalkan di Android 12.

Tabel berikut menjelaskan izin yang ditetapkan untuk COMPANION_DEVICE_WATCH profil perangkat dan persyaratan penggunaannya.

Izin Persyaratan aplikasi dan perangkat pendamping
Notifikasi

BIND_NOTIFICATION_LISTENER_SERVICE

POST_NOTIFICATIONS (added in Android 15)
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar yang dapat menampilkan notifikasi (perangkat yang menggunakan haptic, bukan layar, akan dikecualikan)
  • Memberikan pengalaman notifikasi yang ditampilkan kepada pengguna, misalnya, menampilkan notifikasi ponsel di layar perangkat pendamping.
  • Memposting notifikasi ponsel untuk pengelolaan perangkat. Misalnya, saat smartwatch terhubung atau saat fitur tertentu diaktifkan.
Phone
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki mikrofon dan speaker bawaan yang memungkinkan percakapan suara
  • Memiliki layar yang menampilkan info penelepon
  • Memberikan pengalaman panggilan telepon yang ditampilkan kepada pengguna (aplikasi pendamping menjembatani panggilan telepon)
SMS
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar yang menampilkan pesan SMS
  • Menyediakan pengalaman SMS yang ditampilkan kepada pengguna
Contacts
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar tampilan
  • Menggunakan informasi kontak sebagai bagian dari pengalaman menelepon atau mengirim pesan
Calendar
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar tampilan
  • Berikan pengalaman kalender yang ditampilkan kepada pengguna di smartwatch
Nearby devices
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar tampilan
  • Memberikan pengalaman penyambungan/penyambungan yang ditampilkan kepada pengguna di smartwatch
eSIM provisioning
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar tampilan
  • Memberikan pengalaman yang ditampilkan kepada pengguna yang mengelola layanan pelanggan dari operator di jam
Managing ongoing calls
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki mikrofon dan speaker bawaan yang memungkinkan percakapan suara
  • Memiliki layar yang menampilkan info penelepon
  • Memberikan pengalaman panggilan telepon yang ditampilkan kepada pengguna (aplikasi pendamping menjembatani panggilan telepon)

Profil kacamata

Profil Kacamata diperkenalkan di Android 14.

Tabel berikut menjelaskan izin yang ditetapkan untuk COMPANION_DEVICE_GLASSES profil perangkat dan persyaratan penggunaannya.

Izin Persyaratan aplikasi dan perangkat pendamping
Notifikasi

BIND_NOTIFICATION_LISTENER_SERVICE

POST_NOTIFICATIONS
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar yang dapat menampilkan notifikasi (perangkat yang menggunakan haptic, bukan layar, akan dikecualikan)
  • Memberikan pengalaman notifikasi yang ditampilkan kepada pengguna, misalnya, menampilkan notifikasi ponsel di layar perangkat pendamping.
  • Memposting notifikasi ponsel untuk pengelolaan perangkat, misalnya, saat perangkat kacamata terhubung atau saat fitur tertentu diaktifkan.
Phone
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki mikrofon dan speaker bawaan yang memungkinkan percakapan suara
  • Memiliki layar yang menampilkan info penelepon
  • Memberikan pengalaman panggilan telepon yang ditampilkan kepada pengguna (aplikasi pendamping menjembatani panggilan telepon)
SMS
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar yang menampilkan pesan SMS
  • Menyediakan pengalaman SMS yang ditampilkan kepada pengguna
Contacts
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar tampilan
  • Menggunakan informasi kontak sebagai bagian dari pengalaman menelepon atau mengirim pesan
Microphone
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar tampilan
  • Memberikan pengalaman mikrofon yang menghadap pengguna pada kacamata
Nearby devices
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki layar tampilan
  • Memberikan pengalaman penyambungan/koneksi yang menghadap pengguna pada kacamata
Managing ongoing calls
  • Memiliki perangkat yang terhubung menggunakan Bluetooth dan/atau Wi-Fi
  • Memiliki mikrofon dan speaker bawaan yang memungkinkan percakapan suara
  • Memiliki layar yang menampilkan info penelepon
  • Memberikan pengalaman panggilan telepon yang ditampilkan kepada pengguna (aplikasi pendamping menjembatani panggilan telepon)

Implementasi

Untuk developer pihak ketiga yang menerapkan aplikasi pendamping yang meminta DEVICE_PROFILE_WATCH profil, lakukan tindakan berikut:

  1. Panggil metode setDeviceProfile.

  2. Meneruskan profil (misalnya, DEVICE_PROFILE_WATCH saat membangun AssociationRequest

Untuk produsen perangkat yang menerapkan aplikasi pendamping dengan gunakan konfigurasi sistem Android yang diperlukan berikut ini untuk menyertifikasi aplikasi pendamping, yang memungkinkan aplikasi melewati proses menampilkan izin pengguna dialog untuk pengguna.

  1. Ambil sertifikat menggunakan perintah berikut:

    keytool  -printcert -jarfile PATH/TO/APK
    
  2. Ganti nama paket dan sertifikat seperti yang ditunjukkan di bawah ini contoh input dalam 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 CTS tes di cts/tests/tests/companion/