Begleitgeräteprofile

Das in Android 12 eingeführte Profil für Companion-Geräte 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. einer Smartwatch. Mit einem Geräteprofil für Begleitgeräte wird der Registrierungsprozess vereinfacht, da Apps Nutzern auf ihren Mobilgeräten nur eine Aufforderung zur Beantragung einer bestimmten Gruppe von Berechtigungen anzeigen können, anstatt mehrere Aufforderungen, in denen Berechtigungen einzeln angefordert werden. Dies ermöglicht eine einfachere Einrichtung und bessere Opt-in-Raten für Companion-Apps.

Damit Sie Profile für Companion-Geräte verwenden können, müssen Companion-Apps die folgenden Anforderungen erfüllen:

  • Begleitgerät verwalten, z. B. eine Smartwatch
  • App-Funktionen haben oder Android APIs aufrufen, für die alle Berechtigungen erforderlich sind, die für das Profil des Companion-Geräts definiert sind.

Jedes Profil für ein Companion-Gerät entspricht einer Android-Rolle. Weitere Informationen zu den Berechtigungen und der entsprechenden Android-Rolle der einzelnen Profile finden Sie unter Profile für Companion-Geräte für Drittanbieter-Apps.

Weitere Informationen zu Companion-Geräten finden Sie unter Companion-Geräte koppeln.

Geräteverhalten

In diesem Abschnitt wird das Geräteverhalten beschrieben, wenn Profile für Companion-Geräte verwendet werden.

Wenn ein Nutzer die Anfrage einer App zur Verknüpfung mit einem Companion-Gerät akzeptiert, weist der CompanionDeviceManager-Dienst (CDM) der Companion-App die Rolle „Device Profile“ (z. B. „Smartwatch“) zu und gewährt ihr alle für diese Profilrolle definierten Berechtigungen. Abbildung 1 zeigt ein Beispiel für eine App, die Berechtigungen für das Geräteprofil COMPANION_DEVICE_WATCH anfordert.

Aufforderung zum Ansehen des Geräteprofils

Abbildung 1. Dialogfeld, in dem Berechtigungen für das Smartwatch-Geräteprofil angefordert werden

Wenn ein Nutzer die Paketdaten in den Einstellungen löscht oder alle Geräte in der Companion App entfernt, widerruft CDM das Profil, während die App nicht im Vordergrund ausgeführt wird und kein Dienst im Vordergrund aktiv ist. Wenn Sie das Profil widerrufen, werden auch alle definierten Berechtigungen für das Profil widerrufen.

Nachdem ein Nutzer die Anfrage einer App zur Gewährung von Berechtigungen für ein bestimmtes Geräteprofil akzeptiert hat, kann er einzelne erteilte Berechtigungen widerrufen. Wenn eine Berechtigung von einem Nutzer widerrufen wird, bleibt die App mit dem Begleitgerät verknüpft, aber bestimmte Funktionen sind 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.

Profile für Companion-Geräte für Drittanbieter-Apps

Smartwatch-Profil

Das Smartwatch-Profil wurde in Android 12 eingeführt.

In der folgenden Tabelle werden die definierten Berechtigungen für das Geräteprofil COMPANION_DEVICE_WATCH und die Anforderungen an ihre Verwendung beschrieben.

Berechtigungen Anforderungen an die Companion-App und das Gerät
Benachrichtigungen

BIND_NOTIFICATION_LISTENER_SERVICE

POST_NOTIFICATIONS (added in Android 15)
  • ein über Bluetooth und/oder WLAN verbundenes Gerät sein
  • einen Bildschirm hat, der Benachrichtigungen anzeigen kann (Geräte, die anstelle eines Bildschirms Haptik verwenden, sind ausgeschlossen).
  • Bietet eine nutzerfreundliche Benachrichtigungsfunktion, z. B. die Anzeige von Smartphone-Benachrichtigungen auf dem Bildschirm des verbundenen Geräts.
  • Veröffentliche Smartphone-Benachrichtigungen zur Geräteverwaltung. Beispielsweise, wenn eine Smartwatch verbunden ist oder eine bestimmte Funktion aktiviert ist.
Phone
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • Ein integriertes Mikrofon und einen Lautsprecher, mit dem Sprachgespräche möglich sind
  • Hat ein Display, auf dem Anruferinformationen angezeigt werden
  • Bietet eine Nutzeroberfläche für Telefonanrufe (die Companion-App stellt eine Brücke zu Telefonanrufen her)
SMS
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • Ein Display, auf dem SMS angezeigt werden
  • SMS-Funktionen für Nutzer bereitstellen
Contacts
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • Hat einen Bildschirm
  • Nutzt Kontaktdaten im Rahmen von Anrufen oder Nachrichten
Calendar
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • Hat ein Display
  • Nutzerfreundliche Kalenderfunktion auf der Smartwatch
Nearby devices
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • Hat ein Display
  • Nutzerfreundliche Kopplung/Verbindung auf der Smartwatch
eSIM provisioning
  • ein über Bluetooth und/oder WLAN verbundenes Gerät sein
  • Hat ein Display
  • Eine nutzerfreundliche Oberfläche, über die die Dienste des Mobilfunkanbieters auf der Smartwatch verwaltet werden können
Managing ongoing calls
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • Ein integriertes Mikrofon und einen Lautsprecher, mit dem Sprachgespräche möglich sind
  • Hat ein Display, auf dem Anruferinformationen angezeigt werden
  • Bietet eine Nutzeroberfläche für Telefonanrufe (die Companion-App stellt eine Brücke zu Telefonanrufen her)

Brillenprofil

Das Datenbrillenprofil wird mit Android 14 eingeführt.

In der folgenden Tabelle werden die definierten Berechtigungen für das Geräteprofil COMPANION_DEVICE_GLASSES und die Anforderungen an ihre Verwendung beschrieben.

Berechtigungen Companion-App und Geräteanforderungen
Benachrichtigungen

BIND_NOTIFICATION_LISTENER_SERVICE

POST_NOTIFICATIONS
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • einen Bildschirm hat, der Benachrichtigungen anzeigen kann (Geräte, die anstelle eines Bildschirms Haptik verwenden, sind ausgeschlossen).
  • Bietet eine für den Nutzer sichtbare Benachrichtigungsfunktion, z. B. die Anzeige von Smartphone-Benachrichtigungen auf dem Bildschirm des Begleitgeräts.
  • Postet Smartphone-Benachrichtigungen für die Geräteverwaltung, z. B. wenn eine Smartwatch verbunden ist oder eine bestimmte Funktion aktiviert ist.
Phone
  • ein über Bluetooth und/oder WLAN verbundenes Gerät sein
  • Ein integriertes Mikrofon und einen Lautsprecher, mit dem Sprachgespräche möglich sind
  • Hat ein Display, auf dem Anruferinformationen angezeigt werden
  • Bietet eine Nutzeroberfläche für Telefonanrufe (die Companion-App stellt eine Brücke zu Telefonanrufen her)
SMS
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • Ein Display, auf dem SMS angezeigt werden
  • SMS-Funktionen für Nutzer bereitstellen
Contacts
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • Hat einen Bildschirm
  • Nutzt Kontaktdaten im Rahmen von Anrufen oder Nachrichten
Microphone
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • Hat ein Display
  • Bietet dem Nutzer die Verwendung des Mikrofons an der Brille
Nearby devices
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • Hat ein Display
  • Ermöglicht dem Nutzer das Koppeln/Verbinden mit der Brille
Managing ongoing calls
  • Es muss sich um ein verbundenes Gerät mit Bluetooth und/oder WLAN handeln.
  • Ein integriertes Mikrofon und einen Lautsprecher, mit dem Sprachgespräche möglich sind
  • Hat ein Display, auf dem Anruferinformationen angezeigt werden
  • Bietet eine Nutzeroberfläche für Telefonanrufe (die Companion-App stellt eine Brücke zu Telefonanrufen her)

Implementierung

Drittanbieterentwickler, die eine Companion-App implementieren, die das DEVICE_PROFILE_WATCH-Profil anfordert, müssen Folgendes tun:

  1. Rufen Sie die Methode setDeviceProfile auf.

  2. Geben Sie ein Profil ein (z. B. DEVICE_PROFILE_WATCH), wenn Sie AssociationRequest erstellen.

Gerätehersteller, die eine Companion-App für ein bestimmtes Gerät implementieren, müssen die folgenden erforderlichen Android-Systemkonfigurationen verwenden, um die Companion-App zu zertifizieren. Dadurch kann die App den Dialog zur Nutzereinwilligung überspringen.

  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 Beispieldatei in der Konfigurationsdatei:

    <!-- 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. Verwende AssociationRequest, um eine Verknüpfungsanfrage für ein einzelnes Companion-Gerät zu stellen.

Zertifizierungsstufe

Mit den CTS-Tests in cts/tests/tests/companion/ kannst du das Verhalten der Funktion für Companion-Geräteprofile testen.