Begleitgeräteprofile

Das in Android 12 eingeführte Companion-Geräteprofil ist eine Funktion, mit der Companion-Apps eine Reihe von Berechtigungen anfordern können, die für den Typ des Companion-Geräts spezifisch sind, z. B. eine Smartwatch. Die Verwendung eines Begleitgeräteprofils vereinfacht den Registrierungsprozess, indem es Apps ermöglicht, Benutzern auf ihren Mobilgeräten eine einzige Aufforderung anzuzeigen, um einen definierten Satz von Berechtigungen anzufordern, anstatt mehrere Aufforderungen, die Berechtigungen einzeln anfordern. Dies kann eine optimierte Einrichtungserfahrung und bessere Opt-in-Raten für Begleit-Apps ermöglichen.

Die Verwendung von Profilen für Begleitgeräte ist nur für Gerätehersteller verfügbar, die über Begleitgeräte verfügen. Damit Begleitgeräte Zugriff auf die Funktion erhalten, müssen sie die Anforderungen erfüllen und genehmigt werden.

Die folgenden Profiltypen für Begleitgeräte sind in Android 12 verfügbar: COMPANION_DEVICE_WATCH .

Weitere Informationen zu Begleitgeräten finden Sie unter Begleitgeräte koppeln .

Geräteverhalten

In diesem Abschnitt wird das Geräteverhalten beschrieben, wenn Begleitgeräteprofile verwendet werden.

Wenn ein Benutzer die Anforderung einer App akzeptiert, eine Zuordnung mit einem Begleitgerät zu erstellen, wartet der CompanionDeviceManager (CDM)-Dienst darauf, dass das Begleitgerät eine Verbindung herstellt, und wenn es eine Verbindung herstellt, weist der CDM die Geräteprofilrolle (z. B. Uhr) dem zu Companion-App, die alle Berechtigungen gewährt, die für diese angegebene Profilrolle definiert sind. Abbildung 1 zeigt ein Beispiel einer App, die Berechtigungen für das COMPANION_DEVICE_WATCH anfordert.

Beobachten Sie die Eingabeaufforderung für das Geräteprofil

Abbildung 1. Dialog, der Berechtigungen für das Watch-Geräteprofil anfordert.

Wenn die Zuordnung zwischen einer App und dem Begleitgerät entfernt wird, beispielsweise wenn die Daten für ein Paket gelöscht oder ein Gerät vergessen wird, widerruft CDM die Geräteprofilrolle für die App, wodurch alle definierten Berechtigungen für die Profilrolle entfernt werden aus der App.

Nachdem ein Benutzer die Anfrage einer App akzeptiert hat, Berechtigungen für ein bestimmtes Geräteprofil zu erteilen, kann der Benutzer einzelne erteilte Berechtigungen widerrufen. Wenn eine Berechtigung von einem Benutzer widerrufen wird, bleibt die App mit dem Begleitgerät verbunden, aber bestimmte Funktionen sind möglicherweise nicht mehr verfügbar. Wenn die Berechtigung erforderlich ist, damit die App funktioniert, muss die App die Berechtigung über eine normale Berechtigungsanforderung anfordern .

Anforderungen

Damit eine Begleit-App Zugriff auf die Profil-API des Begleitgeräts erhält, muss die App die folgenden Anforderungen erfüllen:

  • Besitzen Sie ein Begleitgerät (z. B. eine Smartwatch).
  • Sie haben einen berechtigten Grund, die für das Profil des Begleitgeräts definierten Berechtigungen anzufordern.

Profilanforderungen für Begleitgeräte ansehen

Die folgende Tabelle beschreibt die definierten Berechtigungen für die COMPANION_DEVICE_WATCH und die Anforderungen für deren Verwendung.

Berechtigungen Companion-App und Geräteanforderungen
Benachrichtigungen

BIND_NOTIFICATION_LISTENER_SERVICE
  • Ein über Bluetooth und/oder Wi-Fi verbundenes Gerät sein
  • Verfügt über einen Bildschirm, auf dem Benachrichtigungen angezeigt werden können (Geräte, die Haptik anstelle eines Bildschirms verwenden, sind ausgeschlossen)
  • Bietet ein benutzerorientiertes Benachrichtigungserlebnis, z. B. durch Anzeigen von Telefonbenachrichtigungen auf dem Bildschirm des Begleitgeräts
Telefon

phone
  • Ein über Bluetooth und/oder Wi-Fi verbundenes Gerät sein
  • Verfügt über ein eingebautes Mikrofon und einen Lautsprecher, die eine Sprachkonversation ermöglichen
  • Hat einen Bildschirm, der Anruferinformationen anzeigt
  • Bietet ein benutzerorientiertes Telefonanruferlebnis (die begleitende App überbrückt Telefonanrufe)
SMS

sms
  • Ein über Bluetooth und/oder Wi-Fi verbundenes Gerät sein
  • Hat einen Bildschirm, der SMS-Nachrichten anzeigt
  • Bieten Sie ein benutzerorientiertes SMS-Erlebnis
Kontakte

contacts
  • Ein über Bluetooth und/oder Wi-Fi verbundenes Gerät sein
  • Hat einen Bildschirm
  • Verwendet Kontaktinformationen als Teil des Anruf- oder Nachrichtenerlebnisses
Kalender

calendar
  • Ein über Bluetooth und/oder Wi-Fi verbundenes Gerät sein
  • Hat einen Bildschirm
  • Bieten Sie ein benutzerorientiertes Kalendererlebnis auf der Uhr
Geräte in der Nähe

nearby_devices
  • Ein über Bluetooth und/oder Wi-Fi verbundenes Gerät sein
  • Hat einen Bildschirm
  • Bieten Sie ein benutzerseitiges Kopplungs-/Verbindungserlebnis auf der Uhr
eSIM-Bereitstellung

USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER
  • Ein über Bluetooth und/oder Wi-Fi verbundenes Gerät sein
  • Hat einen Bildschirm
  • Bieten Sie ein benutzerorientiertes Erlebnis, das die Dienste des Abonnenten vom Netzbetreiber auf der Uhr verwaltet
Laufende Anrufe verwalten

MANAGE_ONGOING_CALLS
  • Ein über Bluetooth und/oder Wi-Fi verbundenes Gerät sein
  • Verfügt über ein eingebautes Mikrofon und einen Lautsprecher, die eine Sprachkonversation ermöglichen
  • Hat einen Bildschirm, der Anruferinformationen anzeigt
  • Bietet ein benutzerorientiertes Telefonanruferlebnis (die begleitende App überbrückt Telefonanrufe)

Zugriff bekommen

Damit Apps Zugriff auf Profile von Begleitgeräten erhalten, müssen sie genehmigt und einer Zulassungsliste hinzugefügt werden. Wenn eine Anfrage zum Hinzufügen zur Zulassungsliste eingeht, überprüft das Android-Team die App, um sicherzustellen, dass sie die Anforderungen für das entsprechende Begleitgeräteprofil erfüllt.

Implementierung

Verwenden Sie für Gerätehersteller, die eine Begleit-App mit einem bestimmten Gerät implementieren, die folgenden erforderlichen Android-Systemkonfigurationen, um die Begleit-App zu zertifizieren, wodurch die App die Anzeige der CDM-Eingabeaufforderung für Benutzer überspringen kann.

  1. Rufen Sie das Zertifikat mit dem folgenden Befehl ab:

    keytool  -printcert -jarfile PATH/TO/APK
    
  2. Ersetzen Sie den Paketnamen und das Zertifikat wie in der folgenden Beispieleingabe in der Konfigurationsdatei gezeigt:

    <!-- 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. Verwenden Sie AssociationRequest , um eine Zuordnungsanforderung an ein einzelnes Begleitgerät zu stellen.

Gehen Sie für Drittanbieterentwickler, die eine Begleit-App implementieren, die das DEVICE_PROFILE_WATCH -Profil anfordert, wie folgt vor:

  1. Rufen Sie die setDeviceProfile Methode auf.
  2. Übergeben Sie das Profil DEVICE_PROFILE_WATCH beim Erstellen von AssociationRequest .

Validierung

Verwenden Sie die folgenden CTS-Tests, um das Verhalten der Profilfunktion des Begleitgeräts zu testen: