Tamamlayıcı cihaz profilleri

Android 12'de kullanıma sunulan tamamlayıcı cihaz profili, tamamlayıcı uygulamaların tamamlayıcı cihazın türüne (ör. akıllı saat) özel bir dizi izin istemesine olanak tanıyan bir özelliktir. Arkadaş cihaz profilinin kullanılması, uygulamaların mobil cihazlarındaki kullanıcılara tek bir istem göstererek izinleri tek tek isteyen birden fazla istem yerine belirli bir izin grubunu istemelerine olanak tanıyarak kayıt sürecini basitleştirir. Bu sayede daha kolay bir kurulum deneyimi sunabilir ve tamamlayıcı uygulamalar için daha iyi etkinleştirme oranları elde edebilirsiniz.

Tamamlayıcı cihaz profillerini kullanmak için tamamlayıcı uygulamaların aşağıdaki koşulları karşılaması gerekir:

  • Tamamlayıcı cihazları (ör. akıllı saatler) yönetme
  • Arkadaş cihaz profili için tanımlanan tüm izinleri gerektiren uygulama özelliklerine sahip olma veya Android API'lerini çağırma

Her tamamlayıcı cihaz profili bir Android rolüne karşılık gelir. Her profilin izinleri ve ilgili Android rolü hakkında daha fazla bilgi için üçüncü taraf uygulamaları için tamamlayıcı cihaz profilleri başlıklı makaleyi inceleyin.

Tamamlayıcı cihazlar hakkında daha fazla bilgi için Tamamlayıcı cihaz eşleme bölümüne bakın.

Cihaz davranışı

Bu bölümde, tamamlayıcı cihaz profilleri kullanıldığında cihazın davranışı açıklanmaktadır.

Kullanıcı, bir uygulamanın tamamlayıcı cihazla ilişkilendirme oluşturma isteğini kabul ettiğinde CompanionDeviceManager (CDM) hizmeti, cihaz profili rolünü (ör. saat) tamamlayıcı uygulamaya atar ve belirtilen profil rolü için tanımlanan tüm izinleri verir. Şekil 1'de, COMPANION_DEVICE_WATCH cihaz profili için izin isteyen bir uygulama örneği gösterilmektedir.

Cihaz profilini izleme iletişim kutusu istemi

Şekil 1. Saat cihazı profili için izin isteyen iletişim kutusu.

Kullanıcı Ayarlar'da paket verilerini temizlediğinde veya tamamlayıcı uygulamadaki tüm cihazları kaldırdığında, CDM, uygulama ön planda çalışmıyorken ya da bir ön plan hizmeti çalışırken profili iptal eder. Profilin iptal edilmesi, profil için tanımlanmış tüm izinlerin de iptal edilmesine neden olur.

Kullanıcı, bir uygulamanın belirli bir cihaz profili için izin verme isteğini kabul ettikten sonra, verilen izinleri tek tek iptal edebilir. Bir izin kullanıcı tarafından iptal edildiğinde uygulama, tamamlayıcı cihazla ilişkili olmaya devam eder ancak belirli özellikler kullanılamayabilir. İzin, uygulamanın çalışması için gerekliyse uygulama, normal bir izin isteği üzerinden izin istemelidir.

Üçüncü taraf uygulamaları için tamamlayıcı cihaz profilleri

Profil izleme

İzleme profili, Android 12'de kullanıma sunulmuştur.

Aşağıdaki tabloda, COMPANION_DEVICE_WATCH cihaz profili için tanımlanan izinler ve bunların kullanılmasıyla ilgili koşullar açıklanmaktadır.

İzinler Tamamlayıcı uygulama ve cihaz gereksinimleri
Bildirimler

POST_NOTIFICATIONS (added in Android 15)
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • Bildirimleri gösterebilen bir ekrana sahip olmalıdır (ekran yerine dokunma teknolojisi kullanan cihazlar hariçtir)
  • Kullanıcıya yönelik bir bildirim deneyimi sunar (ör. telefon bildirimlerini tamamlayıcı cihaz ekranında gösterme).
  • Cihaz yönetimi için telefon bildirimleri yayınlar. Örneğin, bir kol saati bağlandığında veya belirli bir özellik etkinleştirildiğinde.
Phone
  • Bluetooth ve/veya kablosuz ağ kullanan bağlı bir cihaz olmalıdır.
  • Sesli görüşmeyi sağlayan yerleşik bir mikrofon ve hoparlör olmalıdır.
  • Arayan bilgilerini gösteren bir ekrana sahip olmalıdır.
  • Kullanıcılara yönelik bir telefon görüşmesi deneyimi sunar (yardımcı uygulama telefon görüşmelerini birbirine bağlar)
SMS
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • SMS mesajlarını gösteren bir ekrana sahip olmalıdır.
  • Kullanıcılara yönelik bir SMS deneyimi sunma
Contacts
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • Ekranı var
  • Arama veya mesajlaşma deneyiminin bir parçası olarak iletişim bilgilerini kullanır
Calendar
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • Ekranı var
  • Kol saatinde kullanıcılara yönelik bir takvim deneyimi sunma
Nearby devices
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • Ekranı var
  • Kol saatinde kullanıcılara yönelik bir eşleme/bağlantı deneyimi sunma
eSIM provisioning
  • Bluetooth ve/veya kablosuz ağ kullanan bağlı bir cihaz olmalıdır.
  • Ekranı var
  • Abonenin hizmetlerini kol saatinden operatörden yöneten kullanıcılara yönelik bir deneyim sunma
Managing ongoing calls
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • Sesli görüşmeyi sağlayan yerleşik bir mikrofon ve hoparlör olmalıdır.
  • Arayan bilgilerini gösteren bir ekrana sahip olmalıdır.
  • Kullanıcılara yönelik bir telefon görüşmesi deneyimi sunar (yardımcı uygulama telefon görüşmelerini birbirine bağlar)

Gözlük profili

Glasses profili Android 14'te kullanıma sunulmuştur.

Aşağıdaki tabloda, COMPANION_DEVICE_GLASSES cihaz profili için tanımlanan izinler ve bunların kullanımıyla ilgili gereksinimler açıklanmaktadır.

İzinler Tamamlayıcı uygulama ve cihaz gereksinimleri
Bildirimler

POST_NOTIFICATIONS
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • Bildirimleri gösterebilen bir ekrana sahip olmalıdır (ekran yerine dokunma teknolojisi kullanan cihazlar hariçtir)
  • Kullanıcıya yönelik bir bildirim deneyimi sunar (ör. telefon bildirimlerini tamamlayıcı cihaz ekranında gösterme).
  • Cihaz yönetimi için telefon bildirimleri yayınlar (ör. bir gözlük cihazı bağlandığında veya belirli bir özellik etkinleştirildiğinde).
Phone
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • Sesli görüşmeyi sağlayan yerleşik bir mikrofon ve hoparlör olmalıdır.
  • Arayan bilgilerini gösteren bir ekrana sahip olmalıdır.
  • Kullanıcılara yönelik bir telefon görüşmesi deneyimi sunar (yardımcı uygulama telefon görüşmelerini birbirine bağlar)
SMS
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • SMS mesajlarını gösteren bir ekrana sahip olmalıdır.
  • Kullanıcılara yönelik bir SMS deneyimi sunma
Contacts
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • Ekranı var
  • Arama veya mesajlaşma deneyiminin bir parçası olarak iletişim bilgilerini kullanır
Microphone
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • Ekranı var
  • Gözlüklerde kullanıcıya yönelik bir mikrofon deneyimi sağlar
Nearby devices
  • Bluetooth ve/veya kablosuz ağ kullanan bağlı bir cihaz olmalıdır.
  • Ekranı var
  • Gözlüklerde kullanıcıya yönelik bir eşleme/bağlantı deneyimi sağlar
Managing ongoing calls
  • Bluetooth ve/veya kablosuz ağ kullanarak bağlı bir cihaz olmalıdır.
  • Sesli görüşmeyi sağlayan yerleşik bir mikrofon ve hoparlör olmalıdır.
  • Arayan bilgilerini gösteren bir ekrana sahip olmalıdır.
  • Kullanıcıya yönelik telefon görüşmesi deneyimi sunar (Tamamlayıcı uygulama, telefon aramalarını köprü haline getirir)

Uygulama

DEVICE_PROFILE_WATCH profilini isteyen bir tamamlayıcı uygulama uygulayan üçüncü taraf geliştiriciler aşağıdakileri yapmalıdır:

  1. setDeviceProfile yöntemini çağırın.

  2. AssociationRequest oluştururken bir profil (ör. DEVICE_PROFILE_WATCH) gönderin.

Belirli bir cihaza tamamlayıcı uygulama uygulayan cihaz üreticileri, tamamlayıcı uygulamayı onaylamak için aşağıdaki zorunlu Android sistem yapılandırmalarını kullanmalıdır. Bu yapılandırma, uygulamanın kullanıcılar için kullanıcı izni iletişim kutusunu görüntülemesini atlamasına olanak tanır.

  1. Aşağıdaki komutu kullanarak sertifikayı alın:

    keytool  -printcert -jarfile PATH/TO/APK
    
  2. Yapılandırma dosyasında aşağıdaki örnek girişte gösterildiği gibi paket adını ve sertifikayı değiştirin:

    <!-- 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. Tek bir tamamlayıcı cihazla ilişkilendirme isteği göndermek için AssociationRequest değerini kullanın.

Doğrulama

Tamamlayıcı cihaz profili özelliğinin davranışını test etmek için cts/tests/tests/companion/ içindeki CTS testlerini kullanın.