Profil urządzenia towarzyszącego, wprowadzony w systemie Android 12, to funkcja, która umożliwia aplikacjom towarzyszącym żądanie zestawu uprawnień specyficznych dla typu urządzenia towarzyszącego, na przykład smartwatcha. Korzystanie z profilu urządzenia towarzyszącego upraszcza proces rejestracji, umożliwiając aplikacjom wyświetlanie użytkownikom na urządzeniach mobilnych pojedynczego monitu o żądanie określonego zestawu uprawnień zamiast wielu monitów z indywidualnym żądaniem uprawnień. Może to pozwolić na usprawnienie konfiguracji i lepsze współczynniki akceptacji aplikacji towarzyszących.
Aby móc korzystać z profili urządzeń towarzyszących, aplikacje towarzyszące muszą spełniać następujące wymagania:
- Zarządzaj urządzeniem towarzyszącym (na przykład smartwatchem).
- Korzystaj z funkcji aplikacji lub wywoływaj interfejsy API systemu Android, które wymagają wszystkich uprawnień zdefiniowanych dla profilu urządzenia towarzyszącego.
Każdy profil urządzenia towarzyszącego odpowiada roli systemu Android. Aby uzyskać więcej informacji na temat uprawnień i odpowiedniej roli każdego profilu w systemie Android, zobacz Profile urządzeń towarzyszących dla aplikacji innych firm .
Aby uzyskać więcej informacji na temat urządzeń towarzyszących, zobacz Parowanie urządzeń towarzyszących .
Zachowanie urządzenia
W tej sekcji opisano zachowanie urządzenia, gdy używane są profile urządzeń towarzyszących.
Gdy użytkownik zaakceptuje żądanie aplikacji dotyczące utworzenia powiązania z urządzeniem towarzyszącym, usługa CompanionDeviceManager
(CDM) przypisuje rolę profilu urządzenia (na przykład zegarek) do aplikacji towarzyszącej, przyznając wszystkie uprawnienia zdefiniowane dla tej określonej roli profilu. Rysunek 1 przedstawia przykład aplikacji żądającej uprawnień dla profilu urządzenia COMPANION_DEVICE_WATCH
.
Rysunek 1. Okno dialogowe z prośbą o uprawnienia do profilu urządzenia zegarka.
Gdy użytkownik wyczyści dane pakietu w Ustawieniach lub usunie wszystkie urządzenia z aplikacji towarzyszącej, CDM unieważni profil, gdy aplikacja nie działa na pierwszym planie ani nie jest uruchomiona usługa na pierwszym planie. Unieważnienie profilu powoduje również odebranie wszystkich zdefiniowanych uprawnień dla profilu.
Gdy użytkownik zaakceptuje żądanie aplikacji dotyczące przyznania uprawnień dla określonego profilu urządzenia, może odwołać poszczególne przyznane uprawnienia. Gdy użytkownik cofnie pozwolenie, aplikacja pozostanie powiązana z urządzeniem towarzyszącym, ale niektóre funkcje mogą stać się niedostępne. Jeśli do działania aplikacji wymagane jest zezwolenie, aplikacja musi o to poprosić w ramach zwykłej prośby o pozwolenie .
Profile urządzeń towarzyszących dla aplikacji innych firm
Obejrzyj profil
Profil zegarka został wprowadzony w systemie Android 12.
Poniższa tabela opisuje zdefiniowane uprawnienia dla profilu urządzenia COMPANION_DEVICE_WATCH
oraz wymagania dotyczące ich używania.
Uprawnienia | Wymagania dotyczące aplikacji towarzyszącej i urządzenia |
---|---|
PowiadomieniaBIND_NOTIFICATION_LISTENER_SERVICE |
|
Phone |
|
SMS |
|
Contacts |
|
Calendar |
|
Nearby devices |
|
eSIM provisioning |
|
Managing ongoing calls |
|
Profil okularów
Profil Okulary został wprowadzony w systemie Android 14.
Poniższa tabela opisuje zdefiniowane uprawnienia dla profilu urządzenia COMPANION_DEVICE_GLASSES
oraz wymagania dotyczące ich używania.
Uprawnienia | Wymagania dotyczące aplikacji towarzyszącej i urządzenia |
---|---|
PowiadomieniaBIND_NOTIFICATION_LISTENER_SERVICE POST_NOTIFICATIONS |
|
Phone |
|
SMS |
|
Contacts |
|
Microphone |
|
Nearby devices |
|
Managing ongoing calls |
|
Realizacja
W przypadku zewnętrznych programistów wdrażających aplikację towarzyszącą żądającą profilu DEVICE_PROFILE_WATCH
wykonaj następujące czynności:
Wywołaj metodę
setDeviceProfile
.Przekaż profil (na przykład
DEVICE_PROFILE_WATCH
podczas tworzeniaAssociationRequest
.
Producenci urządzeń pomijają wyświetlanie okna dialogowego wyrażającego zgodę użytkownika
W przypadku producentów urządzeń wdrażających aplikację towarzyszącą na konkretnym urządzeniu należy zastosować poniższe wymagane konfiguracje systemu Android, aby certyfikować aplikację towarzyszącą, co pozwala aplikacji pominąć wyświetlanie okna dialogowego zgody użytkownika.
Pobierz certyfikat za pomocą następującego polecenia:
keytool -printcert -jarfile PATH/TO/APK
Zastąp nazwę pakietu i certyfikat, jak pokazano w następującym przykładowym wejściu w pliku konfiguracyjnym:
<!-- 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>
Użyj
AssociationRequest
aby wysłać żądanie skojarzenia z pojedynczym urządzeniem towarzyszącym.
Walidacja
Aby przetestować zachowanie funkcji profilu urządzenia towarzyszącego, użyj testów CTS w cts/tests/tests/companion/
.