Begleitgeräteprofile

Das in Android 12 eingeführte Begleitgeräteprofil ist eine Funktion, die es Begleit-Apps ermöglicht, eine Reihe von Berechtigungen anzufordern, die für den Typ des Begleitgeräts, beispielsweise einer Smartwatch, spezifisch sind. Die Verwendung eines Begleitgeräteprofils vereinfacht den Registrierungsprozess, indem Apps den Benutzern auf ihren Mobilgeräten eine einzige Aufforderung anzeigen können, um einen definierten Satz von Berechtigungen anzufordern, anstatt mehrere Aufforderungen, bei denen Berechtigungen einzeln angefordert werden. Dies kann eine effizientere Einrichtung und bessere Opt-in-Raten für Begleit-Apps ermöglichen.

Die Verwendung von Begleitgeräteprofilen steht nur Geräteherstellern zur Verfügung, die über Begleitgeräte verfügen. Damit Begleitgeräte Zugriff auf die Funktion erhalten, müssen sie die Anforderungen erfüllen und genehmigt sein.

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

Weitere Informationen zu Begleitgeräten finden Sie unter Kopplung von Begleitgeräten .

Geräteverhalten

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

Wenn ein Benutzer die Anfrage einer App zum Erstellen einer Zuordnung mit einem Begleitgerät akzeptiert, wartet der CompanionDeviceManager (CDM)-Dienst darauf, dass das Begleitgerät eine Verbindung herstellt, und wenn eine Verbindung hergestellt wird, weist der CDM dem Gerät die Geräteprofilrolle (z. B. Beobachten) zu Begleit-App, die alle für die angegebene Profilrolle definierten Berechtigungen gewährt. Abbildung 1 zeigt ein Beispiel einer App, die Berechtigungen für das Geräteprofil COMPANION_DEVICE_WATCH anfordert.

Sehen Sie sich die Dialogaufforderung zum Geräteprofil an

Abbildung 1. Dialogfeld zum Anfordern von Berechtigungen für das Watch-Geräteprofil.

Wenn die Zuordnung zwischen einer App und dem Begleitgerät entfernt wird, beispielsweise wenn die Daten für ein Paket gelöscht werden oder wenn 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 zur Erteilung von Berechtigungen für ein bestimmtes Geräteprofil akzeptiert hat, kann der Benutzer einzelne gewährte Berechtigungen widerrufen. Wenn ein Benutzer eine Berechtigung widerruft, bleibt die App mit dem Begleitgerät verknüpft, bestimmte Funktionen sind jedoch möglicherweise nicht mehr verfügbar. Wenn die Berechtigung für die Funktion der App erforderlich ist, muss die App die Berechtigung über eine normale Berechtigungsanfrage anfordern.

Anforderungen

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

  • Besitzen Sie ein Begleitgerät (zum Beispiel eine Smartwatch).
  • Es gibt einen legitimen Grund dafür, dass die für das Begleitgeräteprofil definierten Berechtigungen erforderlich sind.

Anforderungen an das Begleitgeräteprofil ansehen

In der folgenden Tabelle werden die definierten Berechtigungen für die Geräteprofilrolle COMPANION_DEVICE_WATCH und die Anforderungen für deren Verwendung beschrieben.

Berechtigungen Anforderungen an Begleit-App und Geräte
Benachrichtigungen

BIND_NOTIFICATION_LISTENER_SERVICE
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm, der Benachrichtigungen anzeigen kann (ausgenommen sind Geräte, die Haptik anstelle eines Bildschirms verwenden)
  • Bietet eine benutzerorientierte Benachrichtigungserfahrung, z. B. die Anzeige von Telefonbenachrichtigungen auf dem Bildschirm des Begleitgeräts
Telefon

phone
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über ein eingebautes Mikrofon und einen Lautsprecher, die Sprachgespräche ermöglichen
  • Verfügt über einen Bildschirm, auf dem Anruferinformationen angezeigt werden
  • Bietet ein benutzerorientiertes Telefonanruferlebnis (die Begleit-App überbrückt Telefonanrufe)
SMS

sms
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm, auf dem SMS-Nachrichten angezeigt werden
  • Bieten Sie ein benutzerorientiertes SMS-Erlebnis
Kontakte

contacts
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm
  • Verwendet Kontaktinformationen als Teil des Anruf- oder Nachrichtenerlebnisses
Kalender

calendar
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm
  • Bieten Sie ein benutzerorientiertes Kalendererlebnis auf der Uhr
Geräte in der Nähe

nearby_devices
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm
  • Bieten Sie ein benutzerorientiertes Pairing-/Verbindungserlebnis auf der Uhr
eSIM-Bereitstellung

USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm
  • Bieten Sie ein benutzerorientiertes Erlebnis, das die Dienste des Abonnenten über den Mobilfunkanbieter auf der Uhr verwaltet
Verwalten laufender Anrufe

MANAGE_ONGOING_CALLS
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über ein eingebautes Mikrofon und einen Lautsprecher, die Sprachgespräche ermöglichen
  • Verfügt über einen Bildschirm, auf dem Anruferinformationen angezeigt werden
  • Bietet ein benutzerorientiertes Telefonanruferlebnis (die Begleit-App überbrückt Telefonanrufe)

Zugriff erhalten

Damit Apps Zugriff auf Begleitgeräteprofile 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

Für Gerätehersteller, die eine Begleit-App mit einem bestimmten Gerät implementieren, verwenden Sie 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 Zuordnungsanfrage an ein einzelnes Begleitgerät zu stellen.

Für Drittentwickler, die eine Begleit-App implementieren, die das Profil DEVICE_PROFILE_WATCH anfordert, gehen Sie wie folgt vor:

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

Validierung

Um das Verhalten der Profilfunktion des Begleitgeräts zu testen, verwenden Sie die CTS-Tests in cts/tests/tests/companion/ .

,

Das in Android 12 eingeführte Begleitgeräteprofil ist eine Funktion, die es Begleit-Apps ermöglicht, eine Reihe von Berechtigungen anzufordern, die für den Typ des Begleitgeräts, beispielsweise einer Smartwatch, spezifisch sind. Die Verwendung eines Begleitgeräteprofils vereinfacht den Registrierungsprozess, indem Apps den Benutzern auf ihren Mobilgeräten eine einzige Aufforderung anzeigen können, um einen definierten Satz von Berechtigungen anzufordern, anstatt mehrere Aufforderungen, bei denen Berechtigungen einzeln angefordert werden. Dies kann eine effizientere Einrichtung und bessere Opt-in-Raten für Begleit-Apps ermöglichen.

Die Verwendung von Begleitgeräteprofilen steht nur Geräteherstellern zur Verfügung, die über Begleitgeräte verfügen. Damit Begleitgeräte Zugriff auf die Funktion erhalten, müssen sie die Anforderungen erfüllen und genehmigt sein.

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

Weitere Informationen zu Begleitgeräten finden Sie unter Kopplung von Begleitgeräten .

Geräteverhalten

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

Wenn ein Benutzer die Anfrage einer App zum Erstellen einer Zuordnung mit einem Begleitgerät akzeptiert, wartet der CompanionDeviceManager (CDM)-Dienst darauf, dass das Begleitgerät eine Verbindung herstellt, und wenn eine Verbindung hergestellt wird, weist der CDM dem Gerät die Geräteprofilrolle (z. B. Beobachten) zu Begleit-App, die alle für die angegebene Profilrolle definierten Berechtigungen gewährt. Abbildung 1 zeigt ein Beispiel einer App, die Berechtigungen für das Geräteprofil COMPANION_DEVICE_WATCH anfordert.

Sehen Sie sich die Dialogaufforderung zum Geräteprofil an

Abbildung 1. Dialogfeld zum Anfordern von Berechtigungen für das Watch-Geräteprofil.

Wenn die Zuordnung zwischen einer App und dem Begleitgerät entfernt wird, beispielsweise wenn die Daten für ein Paket gelöscht werden oder wenn 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 zur Erteilung von Berechtigungen für ein bestimmtes Geräteprofil akzeptiert hat, kann der Benutzer einzelne gewährte Berechtigungen widerrufen. Wenn ein Benutzer eine Berechtigung widerruft, bleibt die App mit dem Begleitgerät verknüpft, bestimmte Funktionen sind jedoch möglicherweise nicht mehr verfügbar. Wenn die Berechtigung für die Funktion der App erforderlich ist, muss die App die Berechtigung über eine normale Berechtigungsanfrage anfordern.

Anforderungen

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

  • Besitzen Sie ein Begleitgerät (zum Beispiel eine Smartwatch).
  • Es gibt einen legitimen Grund dafür, dass die für das Begleitgeräteprofil definierten Berechtigungen erforderlich sind.

Anforderungen an das Begleitgeräteprofil ansehen

In der folgenden Tabelle werden die definierten Berechtigungen für die Geräteprofilrolle COMPANION_DEVICE_WATCH und die Anforderungen für deren Verwendung beschrieben.

Berechtigungen Anforderungen an Begleit-App und Geräte
Benachrichtigungen

BIND_NOTIFICATION_LISTENER_SERVICE
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm, der Benachrichtigungen anzeigen kann (ausgenommen sind Geräte, die Haptik anstelle eines Bildschirms verwenden)
  • Bietet eine benutzerorientierte Benachrichtigungserfahrung, z. B. die Anzeige von Telefonbenachrichtigungen auf dem Bildschirm des Begleitgeräts
Telefon

phone
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über ein eingebautes Mikrofon und einen Lautsprecher, die Sprachgespräche ermöglichen
  • Verfügt über einen Bildschirm, auf dem Anruferinformationen angezeigt werden
  • Bietet ein benutzerorientiertes Telefonanruferlebnis (die Begleit-App überbrückt Telefonanrufe)
SMS

sms
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm, auf dem SMS-Nachrichten angezeigt werden
  • Bieten Sie ein benutzerorientiertes SMS-Erlebnis
Kontakte

contacts
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm
  • Verwendet Kontaktinformationen als Teil des Anruf- oder Nachrichtenerlebnisses
Kalender

calendar
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm
  • Bieten Sie ein benutzerorientiertes Kalendererlebnis auf der Uhr
Geräte in der Nähe

nearby_devices
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm
  • Bieten Sie ein benutzerorientiertes Pairing-/Verbindungserlebnis auf der Uhr
eSIM-Bereitstellung

USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über einen Bildschirm
  • Bieten Sie ein benutzerorientiertes Erlebnis, das die Dienste des Abonnenten über den Mobilfunkanbieter auf der Uhr verwaltet
Verwalten laufender Anrufe

MANAGE_ONGOING_CALLS
  • Seien Sie ein über Bluetooth und/oder WLAN verbundenes Gerät
  • Verfügt über ein eingebautes Mikrofon und einen Lautsprecher, die Sprachgespräche ermöglichen
  • Verfügt über einen Bildschirm, auf dem Anruferinformationen angezeigt werden
  • Bietet ein benutzerorientiertes Telefonanruferlebnis (die Begleit-App überbrückt Telefonanrufe)

Zugriff erhalten

Damit Apps Zugriff auf Begleitgeräteprofile 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

Für Gerätehersteller, die eine Begleit-App mit einem bestimmten Gerät implementieren, verwenden Sie 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 Zuordnungsanfrage an ein einzelnes Begleitgerät zu stellen.

Für Drittentwickler, die eine Begleit-App implementieren, die das Profil DEVICE_PROFILE_WATCH anfordert, gehen Sie wie folgt vor:

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

Validierung

Um das Verhalten der Profilfunktion des Begleitgeräts zu testen, verwenden Sie die CTS-Tests in cts/tests/tests/companion/ .