Profil urządzenia towarzyszącego, wprowadzony w Androidzie 12, to funkcja, która umożliwia aplikacjom towarzyszącym żądanie zestawu uprawnień specyficznych dla typu urządzenia towarzyszącego, np. zegarka. Korzystanie z profilu urządzenia towarzyszącego upraszcza proces rejestracji, ponieważ umożliwia aplikacjom wyświetlanie użytkownikom na urządzeniach mobilnych jednego prompta z prośbą o określony zestaw uprawnień zamiast wielu promptów z prośbą o poszczególne uprawnienia. Może to usprawnić proces konfiguracji i zwiększyć współczynniki rezygnacji z aplikacji towarzyszących.
Aby korzystać z profili urządzeń towarzyszących, aplikacje towarzyszące muszą spełniać te wymagania:
- zarządzać urządzeniem towarzyszącym (np. zegarkiem);
- korzystać z funkcji aplikacji lub wywoływać interfejsy API Androida, które wymagają wszystkich uprawnień zdefiniowanych w profilu urządzenia towarzyszącego;
Każdy profil urządzenia towarzyszącego odpowiada roli Androida. Więcej informacji o uprawnieniach i odpowiednich rolach na Androidzie w przypadku poszczególnych profili znajdziesz w artykule Profile urządzeń towarzyszących w aplikacjach innych firm.
Więcej informacji o urządzeniach towarzyszących znajdziesz w artykule Parowanie urządzenia towarzyszącego.
Działanie urządzenia
W tej sekcji opisujemy zachowanie urządzenia, gdy używane są profile urządzenia towarzyszącego.
Gdy użytkownik zaakceptuje prośbę aplikacji o utworzenie powiązania z urządzeniem towarzyszącym, usługa CompanionDeviceManager
(CDM) przypisze do aplikacji towarzyszącej rolę profilu urządzenia (np. zegarka), przyznając jej wszystkie uprawnienia zdefiniowane dla tej roli.
Ilustracja 1 przedstawia przykład aplikacji, która prosi o uprawnienia do COMPANION_DEVICE_WATCH
profilu urządzenia.
Rysunek 1. Okno z prośbą o uprawnienia do profilu urządzenia zegarka.
Gdy użytkownik wyczyści dane pakietu w Ustawieniach lub usunie wszystkie urządzenia w aplikacji towarzyszącej, CDM wycofa profil, gdy aplikacja nie będzie działać na pierwszym planie ani nie będzie mieć uruchomionej usługi na pierwszym planie. Odwołanie profilu powoduje też odwołanie wszystkich zdefiniowanych uprawnień do tego profilu.
Gdy użytkownik zaakceptuje prośbę aplikacji o przyznanie uprawnień do określonego profilu urządzenia, może cofnąć poszczególne przyznane uprawnienia. Gdy użytkownik cofnie uprawnienia, aplikacja pozostanie powiązana z urządzeniem towarzyszącym, ale niektóre funkcje mogą stać się niedostępne. Jeśli uprawnienia są wymagane do działania aplikacji, musi ona o nie poprosić w ramach standardowego żądania uprawnień.
Profile urządzeń towarzyszących w przypadku aplikacji innych firm
Obejrzyj profil
Profil zegarka został wprowadzony w Androidzie 12.
W tabeli poniżej znajdziesz opis zdefiniowanych uprawnień profilu urządzeniaCOMPANION_DEVICE_WATCH
i wymagania dotyczące ich używania.
Uprawnienia | Wymagania dotyczące aplikacji towarzyszącej i urządzenia |
---|---|
Powiadomienia
POST_NOTIFICATIONS (added in Android 15) |
|
Phone |
|
SMS |
|
Contacts |
|
Calendar |
|
Nearby devices |
|
eSIM provisioning |
|
Managing ongoing calls |
|
Profil okularów
Profil okularów został wprowadzony w Androidzie 14.
W tabeli poniżej znajdziesz opis zdefiniowanych uprawnień profilu urządzeniaCOMPANION_DEVICE_GLASSES
i wymagania dotyczące ich używania.
Uprawnienia | Wymagania dotyczące aplikacji towarzyszącej i urządzenia |
---|---|
PowiadomieniaPOST_NOTIFICATIONS |
|
Phone |
|
SMS |
|
Contacts |
|
Microphone |
|
Nearby devices |
|
Managing ongoing calls |
|
Implementacja
Deweloperzy zewnętrzni, którzy wdrażają aplikację towarzyszącą, która wysyła żądanie profilu DEVICE_PROFILE_WATCH
, powinni wykonać te czynności:
Wywołaj metodę
setDeviceProfile
.Przekaż profil (np.
DEVICE_PROFILE_WATCH
podczas tworzeniaAssociationRequest
).
producenci urządzeń mogą pominąć wyświetlanie okna z prośbą o zgodę użytkownika.
Producenci urządzeń, którzy wdrażają aplikację towarzyszącą na określonym urządzeniu, muszą użyć tych wymaganych konfiguracji systemu Android, aby uzyskać certyfikat aplikacji towarzyszącej. Dzięki temu aplikacja nie będzie wyświetlać użytkownikom okna z prośbą o zgodę.
Pobierz certyfikat za pomocą tego polecenia:
keytool -printcert -jarfile PATH/TO/APK
Zastąp nazwę pakietu i certyfikat, jak pokazano w tym przykładowym 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
do wysłania prośby o powiązanie z pojedynczym urządzeniem towarzyszącym.
Weryfikacja
Aby przetestować działanie funkcji profilu urządzenia towarzyszącego, użyj testów CTS w cts/tests/tests/companion/
.