Profile urządzeń towarzyszących

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 .

Obejrzyj okno dialogowe profilu urządzenia

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
Powiadomienia

BIND_NOTIFICATION_LISTENER_SERVICE
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada ekran umożliwiający wyświetlanie powiadomień (z wyłączeniem urządzeń wykorzystujących elementy dotykowe zamiast ekranu)
  • Zapewnia obsługę powiadomień skierowaną do użytkownika, na przykład wyświetlanie powiadomień telefonicznych na ekranie urządzenia towarzyszącego.
Phone
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada wbudowany mikrofon i głośnik umożliwiający prowadzenie rozmów głosowych
  • Posiada ekran wyświetlający informacje o dzwoniącym
  • Zapewnia możliwość prowadzenia rozmów telefonicznych bezpośrednio z użytkownikiem (aplikacja towarzysząca łączy rozmowy telefoniczne)
SMS
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada ekran wyświetlający wiadomości SMS
  • Zapewnij obsługę SMS-ów skierowaną do użytkownika
Contacts
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada wyświetlacz
  • Wykorzystuje informacje kontaktowe w ramach rozmów lub wysyłania wiadomości
Calendar
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada wyświetlacz
  • Zapewnij użytkownikowi kalendarz na zegarku
Nearby devices
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada wyświetlacz
  • Zapewnij użytkownikowi możliwość parowania/łączenia na zegarku
eSIM provisioning
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada wyświetlacz
  • Zapewnij użytkownikowi interfejs umożliwiający zarządzanie usługami abonenta od operatora na zegarku
Managing ongoing calls
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada wbudowany mikrofon i głośnik umożliwiający prowadzenie rozmów głosowych
  • Posiada ekran wyświetlający informacje o dzwoniącym
  • Zapewnia możliwość prowadzenia rozmów telefonicznych bezpośrednio z użytkownikiem (aplikacja towarzysząca łączy rozmowy telefoniczne)

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
Powiadomienia

BIND_NOTIFICATION_LISTENER_SERVICE

POST_NOTIFICATIONS
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada ekran umożliwiający wyświetlanie powiadomień (z wyłączeniem urządzeń wykorzystujących elementy dotykowe zamiast ekranu)
  • Zapewnia obsługę powiadomień skierowaną do użytkownika, na przykład wyświetlanie powiadomień telefonicznych na ekranie urządzenia towarzyszącego.
  • Publikuje powiadomienia z telefonu w celu zarządzania urządzeniem, na przykład gdy podłączone są okulary lub włączona jest określona funkcja.
Phone
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada wbudowany mikrofon i głośnik umożliwiający prowadzenie rozmów głosowych
  • Posiada ekran wyświetlający informacje o dzwoniącym
  • Zapewnia możliwość prowadzenia rozmów telefonicznych bezpośrednio z użytkownikiem (aplikacja towarzysząca łączy rozmowy telefoniczne)
SMS
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada ekran wyświetlający wiadomości SMS
  • Zapewnij obsługę SMS-ów skierowaną do użytkownika
Contacts
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada wyświetlacz
  • Wykorzystuje informacje kontaktowe w ramach rozmów lub wysyłania wiadomości
Microphone
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada wyświetlacz
  • Zapewnia kontakt z mikrofonem skierowanym w stronę użytkownika w okularach
Nearby devices
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada wyświetlacz
  • Umożliwia parowanie/łączenie zwrócone w stronę użytkownika w okularach
Managing ongoing calls
  • Być podłączonym urządzeniem za pomocą Bluetooth i/lub Wi-Fi
  • Posiada wbudowany mikrofon i głośnik umożliwiający prowadzenie rozmów głosowych
  • Posiada ekran wyświetlający informacje o dzwoniącym
  • Zapewnia możliwość prowadzenia rozmów telefonicznych bezpośrednio z użytkownikiem (aplikacja towarzysząca łączy rozmowy telefoniczne)

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:

  1. Wywołaj metodę setDeviceProfile .

  2. Przekaż profil (na przykład DEVICE_PROFILE_WATCH podczas tworzenia AssociationRequest .

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.

  1. Pobierz certyfikat za pomocą następującego polecenia:

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