Profils d'appareils compagnons

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Le profil d'appareil compagnon, introduit dans Android 12, est une fonctionnalité qui permet aux applications compagnons de demander un ensemble d'autorisations spécifiques au type d'appareil compagnon, par exemple, une smartwatch. L'utilisation d'un profil d'appareil compagnon simplifie le processus d'inscription en permettant aux applications d'afficher une seule invite aux utilisateurs sur leurs appareils mobiles pour demander un ensemble défini d'autorisations au lieu de plusieurs invites demandant des autorisations individuellement. Cela peut permettre une expérience de configuration plus simplifiée et de meilleurs taux d'activation pour les applications compagnons.

L'utilisation des profils d'appareils compagnons n'est disponible que pour les fabricants d'appareils qui ont des appareils compagnons. Pour que les appareils compagnons aient accès à la fonctionnalité, ils doivent répondre aux exigences et être approuvés.

Les types de profils d'appareils compagnons suivants sont disponibles dans Android 12 : COMPANION_DEVICE_WATCH .

Pour plus d'informations sur les appareils compagnons, voir Couplage des appareils compagnons .

Comportement de l'appareil

Cette section décrit le comportement de l'appareil lorsque des profils d'appareils compagnons sont utilisés.

Lorsqu'un utilisateur accepte la demande d'une application pour créer une association avec un appareil compagnon, le service CompanionDeviceManager (CDM) attend que l'appareil compagnon se connecte, et lorsqu'il se connecte, le CDM attribue le rôle de profil d'appareil (par exemple, regarder) au application compagnon, accordant toutes les autorisations définies pour ce rôle de profil spécifié. La figure 1 montre un exemple d'application demandant des autorisations pour le profil d'appareil COMPANION_DEVICE_WATCH .

Regarder l'invite de la boîte de dialogue du profil de l'appareil

Figure 1. Boîte de dialogue demandant des autorisations pour le profil de l'appareil de la montre.

Lorsque l'association entre une application et l'appareil compagnon est supprimée, par exemple lorsque les données d'un package sont effacées ou lorsqu'un appareil est oublié, CDM révoque le rôle de profil d'appareil pour l'application, ce qui supprime toutes les autorisations définies pour le rôle de profil. depuis l'application.

Une fois qu'un utilisateur accepte la demande d'une application d'accorder des autorisations pour un profil d'appareil particulier, l'utilisateur peut révoquer les autorisations individuelles qui ont été accordées. Lorsqu'une autorisation est révoquée par un utilisateur, l'application reste associée à l'appareil compagnon, mais certaines fonctionnalités peuvent devenir indisponibles. Si l'autorisation est requise pour que l'application fonctionne, l'application doit demander l'autorisation via une demande d'autorisation normale .

Conditions

Pour qu'une application compagnon puisse accéder à l'API de profil d'appareil compagnon, l'application doit répondre aux exigences suivantes :

  • Avoir un appareil compagnon (par exemple, une montre connectée).
  • Avoir une raison légitime d'exiger les autorisations définies pour le profil d'appareil compagnon.

Regarder les exigences du profil d'appareil compagnon

Le tableau suivant décrit les autorisations définies pour le rôle de profil d'appareil COMPANION_DEVICE_WATCH et les conditions requises pour les utiliser.

Autorisations Configuration requise pour l'application compagnon et l'appareil
Avis

BIND_NOTIFICATION_LISTENER_SERVICE
  • Être un appareil connecté via Bluetooth et/ou Wi-Fi
  • Dispose d'un écran capable d'afficher des notifications (les appareils qui utilisent l'haptique au lieu d'un écran sont exclus)
  • Fournit une expérience de notification face à l'utilisateur, par exemple, en affichant des notifications téléphoniques sur l'écran de l'appareil compagnon
Téléphoner

phone
  • Être un appareil connecté via Bluetooth et/ou Wi-Fi
  • Dispose d'un microphone et d'un haut-parleur intégrés qui permettent une conversation vocale
  • Dispose d'un écran qui affiche les informations sur l'appelant
  • Fournit une expérience d'appel téléphonique face à l'utilisateur (l'application compagnon relie les appels téléphoniques)
SMS

sms
  • Être un appareil connecté via Bluetooth et/ou Wi-Fi
  • Dispose d'un écran qui affiche les messages SMS
  • Offrir une expérience SMS orientée vers l'utilisateur
Contacts

contacts
  • Être un appareil connecté via Bluetooth et/ou Wi-Fi
  • Dispose d'un écran d'affichage
  • Utilise les informations de contact dans le cadre de l'expérience d'appel ou de messagerie
Calendrier

calendar
  • Être un appareil connecté via Bluetooth et/ou Wi-Fi
  • Dispose d'un écran d'affichage
  • Offrez une expérience de calendrier accessible à l'utilisateur sur la montre
Appareils à proximité

nearby_devices
  • Être un appareil connecté via Bluetooth et/ou Wi-Fi
  • Dispose d'un écran d'affichage
  • Fournir une expérience d'appairage/de connexion face à l'utilisateur sur la montre
Approvisionnement eSIM

USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER
  • Être un appareil connecté via Bluetooth et/ou Wi-Fi
  • Dispose d'un écran d'affichage
  • Fournir une expérience utilisateur qui gère les services de l'abonné depuis l'opérateur sur la montre
Gestion des appels en cours

MANAGE_ONGOING_CALLS
  • Être un appareil connecté via Bluetooth et/ou Wi-Fi
  • Dispose d'un microphone et d'un haut-parleur intégrés qui permettent une conversation vocale
  • Dispose d'un écran qui affiche les informations sur l'appelant
  • Fournit une expérience d'appel téléphonique face à l'utilisateur (l'application compagnon relie les appels téléphoniques)

Obtenir l'accès

Pour que les applications puissent accéder aux profils d'appareils compagnons, elles doivent être approuvées et ajoutées à une liste d'autorisation. Lorsqu'une demande d'ajout à la liste d'autorisation est reçue, l'équipe Android examine l'application pour s'assurer qu'elle répond aux exigences du profil d'appareil compagnon correspondant.

Mise en œuvre

Pour les fabricants d'appareils mettant en œuvre une application compagnon avec un appareil spécifique, utilisez les configurations système Android requises suivantes pour certifier l'application compagnon, ce qui permet à l'application d'ignorer l'affichage de l'invite CDM pour les utilisateurs.

  1. Récupérez le certificat à l'aide de la commande suivante :

    keytool  -printcert -jarfile PATH/TO/APK
    
  2. Remplacez le nom du package et le certificat comme indiqué dans l'exemple d'entrée suivant dans le fichier de configuration :

    <!-- 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. Utilisez AssociationRequest pour effectuer une demande d'association à un seul appareil compagnon.

Pour les développeurs tiers implémentant une application compagnon qui demande le profil DEVICE_PROFILE_WATCH , procédez comme suit :

  1. Appelez la méthode setDeviceProfile .
  2. Transmettez le profil DEVICE_PROFILE_WATCH lors de la construction AssociationRequest .

Validation

Pour tester le comportement de la fonctionnalité de profil d'appareil compagnon, utilisez les tests CTS suivants :