Rôles Android

Un rôle est un nom unique au sein du système associé à certaines autorisations et privilèges. Les applications peuvent demander à détenir certains rôles via l'API Android, notamment en appelant des méthodes de la classe RoleManager .

Consultez la liste suivante pour connaître les rôles disponibles et leurs exigences correspondantes.

Rôle Exigences
ASSISTANT Au moins un des :
  • L'application dispose d'une activité qui effectue des actions d'assistance, en fonction des informations sur le contexte de l'utilisateur lorsqu'il a demandé l'assistance (par exemple, le nom du package pour l'application de premier plan actuelle et ses informations contextuelles).
  • L'application dispose d'un service d'interaction vocale permanent, contrôlé par l'autorisation android.permission.BIND_VOICE_INTERACTION , qui peut effectuer une reconnaissance vocale et héberger des sessions d'interaction vocale actives. De plus, l'application dispose d'un indicateur explicite indiquant que le service est capable de gérer l'action d'assistance.
NAVIGATEUR Tous:
  • L'application a une activité, que les applications peuvent invoquer via des requêtes d'intention implicites, qui affiche une page Web correspondant à une adresse http:// .
  • L'application doit gérer la navigation entre les liens. Autrement dit, si l'utilisateur consulte une page Web et clique sur une adresse http:// dans le texte, l'application doit pouvoir afficher le contenu correspondant au lien sélectionné sans intervention supplémentaire de l'utilisateur.
  • L'application doit être en mesure de fournir les informations de géolocalisation actuelles de l'appareil aux pages Web lorsque cela est demandé et que l'utilisateur approuve la demande.
COMPOSEUR Tous:
  • L'application a une activité, que les applications peuvent invoquer via des demandes d'intention implicites, qui fournit l'interface utilisateur en appel pendant que l'appareil est en appel.
  • L'application peut gérer les intentions d'appel entrant, afficher les informations liées à l'appel (par exemple, le numéro de téléphone de l'appelant) à l'utilisateur et permettre à l'utilisateur de répondre ou de refuser l'appel.
  • L'application offre à l'utilisateur un moyen de lancer des appels et de consulter un historique des appels sur son appareil.
SMS Tous:
  • L'application répond à toutes les exigences des applications SMS .
  • L'application a une activité, que les applications peuvent invoquer via des demandes d'intention implicites, qui peuvent envoyer un message à un numéro de téléphone.
  • L'application dispose d'un service, contrôlé par l'autorisation android.permission.SEND_RESPOND_VIA_MESSAGE et invocable par des intentions implicites, qui peut transmettre les messages reçus de l'application Téléphone lorsque l'utilisateur choisit de répondre par message lors d'un appel entrant. L'application peut transmettre des messages via son propre système de messagerie.
  • L'application dispose de deux récepteurs de diffusion, l'un contrôlé par l'autorisation android.permission.BROADCAST_SMS et l'autre par l'autorisation android.permission.BROADCAST_WAP_PUSH , qui peuvent écouter les messages SMS et MMS textuels envoyés à l'appareil, respectivement. L'application est ensuite chargée d'écrire les messages au fournisseur SMS et d'en informer les utilisateurs.
URGENCE Tous:
  • L'application est une application système .
  • L'application propose une activité qui présente les informations d'urgence de l'utilisateur. Tout le monde peut accéder à cet écran via le bouton d'urgence de l'activité Numéroteur d'urgence.
MAISON L'application dispose d'une activité qui peut lancer l'écran d'accueil lorsque l'utilisateur appuie sur le bouton d'accueil. L'écran d'accueil doit afficher des icônes d'applications, des widgets et prendre en charge la navigation basée sur des boutons ou des gestes (par exemple, faire glisser votre doigt vers le haut pour voir toutes les applications).
CALL_REDIRECTION L'application dispose d'un service, contrôlé par l'autorisation android.permission.BIND_CALL_REDIRECTION_SERVICE , auquel le framework Telecom peut se lier. Le service reçoit le numéro de téléphone sortant du framework Telecom et effectue l'une des actions suivantes :
  • Autorisez l’appel à être passé tel quel.
  • Modifiez le numéro sortant pour l'acheminer via un numéro proxy.
  • Annulez l'appel.
APPEL_SCREENING L'application dispose d'un service, contrôlé par l'autorisation android.permission.BIND_SCREENING_SERVICE , qui remplit deux fonctions :
  1. Blocage/filtrage d'appels : le service peut choisir quels appels doivent être envoyés à l'application de numérotation sur le téléphone (et potentiellement sonner, en fonction du NPD/du volume), et lesquels doivent être envoyés silencieusement à la messagerie vocale.
  2. Identification de l'appel : le service peut identifier et afficher des informations sur un appel via une interface utilisateur.
SYSTÈME_GALLERY Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application fournit une interface utilisateur permettant aux utilisateurs de stocker, organiser et afficher leurs vidéos et images.
SYSTEM_AUTOMOTIVE_CLUSTER Tous:
  • L'application est une application système sur l'automobile.
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application fournit des fonctionnalités pour un écran de cluster automobile (généralement adjacent au volant) permettant aux utilisateurs de répondre aux appels téléphoniques et d'accéder aux listes de contacts et aux journaux d'appels.
COMPANION_DEVICE_WATCH L'application peut faire des demandes pour être associée et gérer un appareil de montre (en utilisant l'API fournie par la classe CompanionDeviceManager ). Une fois la montre et l'application connectées via l'interface utilisateur fournie par l'application, les utilisateurs peuvent gérer leur montre depuis l'application, notamment la synchronisation des contacts et du calendrier, ainsi que la gestion des notifications et des appels téléphoniques.
SYSTEM_AUTOMOTIVE_PROJECTION Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application permet de projeter l'écran du téléphone sur l'écran du véhicule. Il permet aux conducteurs d'accéder et de contrôler les applications sur les téléphones Android, notamment la musique, la navigation, les appels téléphoniques et la recherche Google, à l'aide de mécanismes de saisie sur le véhicule, notamment le toucher, les commandes au volant et les commandes vocales.
SYSTÈME_SHELL Tous:
  • L'application est une application système à laquelle l'UID Process.SHELL_UID est attribué.
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application fournit une interface qui fonctionne au niveau de la ligne de commande afin que les utilisateurs puissent interagir avec le système d'exploitation Android. Par exemple, afficher le contenu d'un dossier ou lancer des applications. Les commandes Shell peuvent être exécutées par programme par des applications (à condition que les autorisations nécessaires aient été accordées) ou à partir de l'outil ADB.
SYSTÈME_CONTACTS Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application fournit une interface utilisateur permettant aux utilisateurs de gérer leurs contacts (par exemple, afficher, partager, ajouter, supprimer ou rechercher un contact). L'application met à jour le fournisseur de contacts lorsque l'utilisateur met à jour ses contacts depuis l'application. Les utilisateurs peuvent également appeler, envoyer des e-mails ou envoyer des SMS à leurs contacts depuis l'application.
SYSTEM_SPEECH_RECOGNIZER Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application fournit un service permettant d'effectuer une reconnaissance vocale.
  • Lorsque l'application reçoit des flux de microphone en direct d'une autre application pour la reconnaissance vocale, elle attribue correctement l'utilisation du microphone à l'application appelante et met à jour les statistiques de fonctionnement de l'application en conséquence.
SYSTEM_WIFI_COEX_MANAGER Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application dispose d'un service qui définit dynamiquement une liste de canaux Wi-Fi que l'appareil doit éviter d'utiliser en raison d'interférences cellulaires.
SYSTÈME_BIEN-ÊTRE Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application doit fournir des fonctionnalités permettant aux utilisateurs de réduire les distractions et de leur fournir des statistiques sur la façon dont ils utilisent leur appareil (par exemple, leur temps d'écran par semaine).
SYSTEM_TELEVISION_NOTIFICATION_HANDLER Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application doit afficher des notifications tête haute aux utilisateurs sur les appareils TV. L'application doit également afficher les notifications actives actuelles lorsque l'intention android.app.action.TOGGLE_NOTIFICATION_HANDLER_PANEL est envoyée (à partir de SystemUI).
SYSTEM_COMPANION_DEVICE_PROVIDER Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application doit être capable de détecter les périphériques à proximité. Il doit disposer d'une interface utilisateur dans laquelle l'utilisateur peut confirmer qu'un périphérique donné doit être associé et géré par une application. Une fois que l'utilisateur confirme, l'application de gestion accorde à l'application associée l'autorisation d'accéder au périphérique (par exemple, son nom, son adresse, sa classe et son état de liaison) et elle peut démarrer le processus de liaison.
SYSTEM_DOCUMENT_MANAGER Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application dispose d'une activité qui permet aux utilisateurs d'accéder aux documents existants et de créer de nouveaux documents sur l'appareil.
  • L'application doit remplir toutes les exigences décrites dans la section 2.2.3 du CDD Android. Logiciel sous la rubrique [3.2.3.1/H-0-1] .
SYSTEM_ACTIVITY_RECOGNIZER Tous:
  • L'application est une application système .
  • L'application dispose d'un service, contrôlé par android.permission.ACTIVITY_RECOGNITION , qui peut effectuer une reconnaissance d'activité (par exemple, course à pied ou vélo).
SYSTÈME_UI Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application dispose d'une interface permettant aux utilisateurs d'interagir avec leur téléphone. Par exemple, l'écran principal du téléphone, la navigation, les applications récentes, les paramètres rapides, la barre de notification, l'écran de verrouillage, le contrôle du volume.
SYSTEM_TELEVISION_REMOTE_SERVICE Tous:
  • L'application est une application système sur Android TV.
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application dispose d'un service qui peut communiquer avec le périphérique HID de la télécommande du téléviseur (par exemple, via BLE), injecter des événements (par exemple, des clics sur des boutons) et envoyer d'autres données (par exemple, un flux audio provenant d'un microphone intégré à la télécommande). ) dans la plateforme.
SYSTEM_UI_INTELLIGENCE Tous:
  • Il s'agit d'un service préinstallé qui fournit, via des API de structure (API publiques ou système), un processeur intelligent sur l'appareil pour les fonctionnalités de l'interface utilisateur du système (par exemple, prédire et afficher les prochaines applications pour les utilisateurs).
  • Le service doit remplir toutes les exigences décrites dans la section 9.8.6 Content Capture du CDD Android.
  • Il ne peut pas avoir l’autorisation android.permission.INTERNET . Au lieu de cela, il doit accéder à Internet via des API bien définies dans un projet open source.
  • Il ne peut pas se lier aux applications, à l'exception des applications système suivantes : Bluetooth, Contacts, Médias, Téléphonie, SystemUI et les composants fournissant des API Internet. Chaque liaison autorisée doit être configurée explicitement via la configuration <allow-association> dans la configuration du système.
  • Il ne peut pas partager de données avec des applications sauf en cas d'action directe de l'utilisateur (par exemple, l'utilisateur appuie explicitement sur un bouton à chaque fois que les données sont partagées).
SYSTEM_AMBIENT_AUDIO_INTELLIGENCE Tous:
  • Identique aux conditions pour SYSTEM_UI_INTELLIGENCE , sauf que le service préinstallé fournit un processeur intelligent sur l'appareil pour l'audio ambiant (par exemple, reconnaissance des chansons jouées à proximité de l'appareil).
SYSTEM_AUDIO_INTELLIGENCE Tous:
  • Conditions identiques à SYSTEM_UI_INTELLIGENCE , sauf que le service préinstallé fournit un processeur intelligent sur l'appareil pour l'audio (par exemple, sous-titrage de vidéos, podcasts, appels téléphoniques, appels vidéo et messages audio).
SYSTEM_NOTIFICATION_INTELLIGENCE Tous:
  • Identique aux conditions de SYSTEM_UI_INTELLIGENCE , sauf que le service préinstallé fournit un processeur intelligent sur l'appareil pour les notifications (par exemple, suggérant des réponses et des actions pour les notifications de messages).
SYSTEM_TEXT_INTELLIGENCE Tous:
  • Identique aux conditions de SYSTEM_UI_INTELLIGENCE , sauf que le service préinstallé fournit un processeur intelligent sur l'appareil pour le texte (par exemple, fournissant une traduction en direct ou un remplissage automatique).
SYSTEM_VISUAL_INTELLIGENCE Tous:
  • Identique aux conditions pour SYSTEM_UI_INTELLIGENCE , sauf que le service préinstallé fournit un processeur intelligent sur l'appareil pour les fonctionnalités visuelles qui impliquent l'analyse des données de la caméra. Par exemple, garder l'écran du téléphone actif pendant que l'utilisateur le regarde ou déterminer l'orientation idéale de l'écran en fonction de l'orientation du visage de l'utilisateur à partir de la caméra frontale de l'appareil.
COMPANION_DEVICE_APP_STREAMING Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application peut créer et gérer des canaux de communication avec les appareils connectés afin qu'ils puissent échanger des données. L'application et les appareils connectés doivent s'authentifier mutuellement (par exemple en prouvant leur connaissance des clés partagées) pour établir ces canaux de communication. Les canaux de communication doivent être protégés par cryptage.
  • L'application peut envoyer des notifications de l'appareil local à l'appareil connecté pour permettre à l'utilisateur d'agir sur les notifications sur l'appareil connecté.
  • Pouvoir diffuser les métadonnées nécessaires au streaming des applications sur l'appareil connecté, comme la liste des applications disponibles sur l'appareil local.
  • Pouvoir diffuser des applications depuis l'appareil local vers l'appareil connecté après que l'utilisateur a indiqué son souhait de le faire avec son consentement explicite (soit sur le téléphone, soit sur l'appareil connecté).
  • Être capable de rejouer (injecter) les événements qui se produisent sur une application diffusée en streaming sur un appareil connecté sur l'appareil local. Par exemple, rejouer un événement tactile sur la tablette aux mêmes coordonnées sur le téléphone.
  • L'application peut remplacer le flux du microphone de l'appareil local par le flux du microphone d'un appareil connecté pendant qu'une application diffusée en streaming utilise le microphone.
  • L'application capture l'audio de l'appareil et le diffuse sur l'appareil connecté.
  • Doit bloquer le flux de la caméra de l'appareil local lorsqu'une application diffusée en streaming utilise la caméra.
  • Doit vérifier l'intégrité de la version du système d'exploitation de l'appareil connecté (par exemple, en utilisant l'attestation de l'appareil comme dans VerifiedBootState ).
  • Diffusez uniquement les applications pour lesquelles il n'existe qu'un seul compte correspondant dans le registre des comptes sur l'appareil (par exemple, AccountManager sur Android) sur les deux appareils. Si ce n'est pas le cas, le streaming doit être autorisé avec un code à usage unique affiché sur l'appareil source et renseigné sur l'appareil connecté. Notez que dans le cas d'appareils prenant en charge plusieurs utilisateurs (et non plusieurs comptes) avec la même isolation des données garantie comme dans Android multi-utilisateur , un utilisateur compte comme un appareil.
  • Doit arrêter la diffusion et se déconnecter immédiatement d'un appareil connecté si l'authentification du compte sur l'appareil connecté expire ou est révoquée.
  • Doit vérifier qu'un appareil connecté est à portée Bluetooth de l'appareil local avant et pendant la diffusion.
  • Doit déconnecter les sessions de streaming d'applications en cours si l'utilisateur n'interagit pas avec l'appareil connecté (par exemple, le clavier, l'écran tactile et la souris sont inactifs) pendant 5 minutes. Les applications de streaming vidéo sont exemptées de cette exigence.
  • Si l'appareil source utilise Lockscreen Knowledge Factor (LSKF), lorsque l'écran est verrouillé, l'application ne doit pas diffuser d'applications sur un appareil connecté, sauf si cet appareil dispose d'un écran de verrouillage et est déverrouillé.
  • Si l'appareil est géré par un administrateur, l'application doit respecter les politiques définies par l'administrateur concernant l'activation ou la désactivation de la diffusion d'applications sur les appareils à proximité (par exemple, à l'aide des paramètres DevicePolicyManager sous Android).
  • Doit garantir que l'écran distant et toutes les sources d'événements d'entrée à distance appartiennent au même périphérique logique (par exemple, un écran distant et un clavier connecté) du point de vue de l'utilisateur et que les événements sont acheminés en conséquence.
  • L'utilisateur doit pouvoir mettre fin à la diffusion depuis l'appareil local, par exemple en utilisant un bouton dans une notification persistante. Ce comportement est contrôlé par l'écran de verrouillage, si le téléphone dispose d'un verrouillage d'écran.
  • Doit afficher une option sur l'appareil source lorsque la diffusion a lieu sur un autre appareil, comme une icône dans la barre d'état ou une notification persistante.
DEVICE_POLICY_MANAGEMENT Tous:
  • Seuls les OEM peuvent accorder ce rôle à l'application. Les applications ne peuvent pas demander ce rôle, car il est censé être accordé immédiatement au nom du package défini par le fabricant OEM lors de l'expédition de l'appareil.
  • L'application doit être capable de fournir un profil géré (propriétaire du profil) ou un appareil géré (propriétaire de l'appareil), y compris le téléchargement/l'installation du client Device Policy approprié pour être le propriétaire de l'appareil/du profil si nécessaire.
  • L'application peut éventuellement mettre à jour dynamiquement des ressources telles que des chaînes et des éléments dessinables utilisés pour la gestion des politiques des appareils.
  • L'application peut être une application système préinstallée ou être téléchargée et installée avant le provisionnement.
  • Dans les cas de provisionnement du propriétaire de profil, lorsque l'application de titulaire de rôle est installée sur un utilisateur Android donné, elle doit être installée sur tous les profils applicables pour cet utilisateur.
SYSTEM_APP_PROTECTION_SERVICE Tous:
  • L'application est une application système .
  • Le seul objectif de l'application est de détecter les applications potentiellement dangereuses (applications susceptibles de mettre en danger les utilisateurs, les données des utilisateurs ou les appareils, telles que les chevaux de Troie, le phishing et les logiciels espions) ou les logiciels mobiles indésirables .
  • L'application doit remplir toutes les exigences décrites dans la section 9.8.6 Capture de contenu du CDD Android.
  • Il ne doit pas déclarer l'autorisation normale android.permission.INTERNET . Au lieu de cela, il doit accéder à Internet via des API bien définies dans un projet open source.
  • Il ne doit pas se lier aux applications, à l'exception des applications système suivantes : Permission Controller et les composants fournissant des API Internet. Chaque liaison autorisée doit être configurée explicitement via la configuration <allow-association> dans la configuration du système.
  • Il ne doit pas partager de données avec des applications, sauf en cas d'action directe de l'utilisateur (par exemple, l'utilisateur appuie explicitement sur un bouton à chaque fois que les données sont partagées).
SYSTEM_AUTOMOTIVE_CALENDAR_SYNC_MANAGER Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • Doit transférer les données du calendrier du téléphone iOS ou Android de l'utilisateur vers l'appareil Android Auto. L'appareil Android Auto doit stocker ces données de calendrier dans le fournisseur de calendrier .
  • L'application doit fournir un composant d'interface utilisateur sur le téléphone que l'utilisateur peut utiliser pour activer la synchronisation du calendrier et sélectionner les calendriers à synchroniser. L'application doit fournir un composant d'interface utilisateur sur le téléphone que l'utilisateur peut utiliser pour désactiver la synchronisation du calendrier.
  • Doit fonctionner sans connexion Internet. Par exemple, en utilisant des connexions filaires ou sans fil directes.
AUTOMOTIVE_NAVIGATION Tous:
  • L'application a une activité, que les applications peuvent invoquer via des demandes d'intention implicites, qui indique l'emplacement actuel et l'environnement de l'utilisateur.
  • L'application a une activité, que les applications peuvent invoquer via des demandes d'intention implicites, qui permet à l'utilisateur de naviguer vers une géolocalisation spécifiée.
  • A une activité qui est lancée sur le combiné d'instruments lorsque l'application détient le focus de navigation . L'activité doit montrer l'emplacement actuel de l'utilisateur, ses environs et lui permettre de naviguer vers une géolocalisation spécifiée.
COMPANION_DEVICE_COMPUTER Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • Permettez aux utilisateurs de mettre en miroir les notifications et d'accéder aux photos et aux médias depuis le téléphone sur un ordinateur connecté.
SYSTEM_SETTINGS_INTELLIGENCE Au moins un des :
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • Dispose d'un service qui fournit des fonctionnalités intelligentes pour l'application Paramètres, telles que des suggestions et une recherche.
REMARQUES Tous:
COMPANION_DEVICE_GLASSES L'application peut faire des demandes pour être associée et gérer un appareil à lunettes (en utilisant l'API fournie par la classe CompanionDeviceManager ). Une fois le dispositif à lunettes et l'application connectés à l'aide de l'interface utilisateur fournie par CDM, les utilisateurs peuvent gérer leur dispositif à lunettes en lui donnant accès aux contacts et à l'autorisation de gérer les notifications et les appels téléphoniques.
COMPANION_DEVICE_NEARBY_DEVICE_STREAMING Tous:
  • L'application est une application système .
  • Seuls les OEM peuvent accorder ce rôle à l'application.
  • L'application peut créer et gérer des canaux de communication avec des appareils connectés afin que ceux-ci puissent échanger des données. L'application et les appareils connectés doivent s'authentifier mutuellement (par exemple en prouvant leur connaissance des clés partagées) pour établir ces canaux de communication. Les canaux de communication doivent être protégés par cryptage.
  • L'application peut envoyer des notifications de l'appareil local à l'appareil connecté pour permettre à l'utilisateur d'agir sur les notifications sur l'appareil connecté.
  • Pouvoir diffuser les métadonnées nécessaires au streaming des applications sur l'appareil connecté, comme la liste des applications disponibles sur l'appareil local.
  • Pouvoir diffuser des applications depuis l'appareil local vers l'appareil connecté après que l'utilisateur a indiqué son souhait de le faire avec son consentement explicite (soit sur le téléphone, soit sur l'appareil connecté).
  • Être capable de rejouer (injecter) les événements qui se produisent sur une application diffusée en streaming sur un appareil connecté sur l'appareil local. Par exemple, relire un événement tactile sur la tablette aux mêmes coordonnées que sur le téléphone, ou relire un événement d'entrée survenu sur le dispositif à lunettes avec la même sémantique d'entrée que sur le téléphone.
  • L'application peut remplacer le flux du microphone de l'appareil local par le flux du microphone d'un appareil connecté pendant qu'une application diffusée en streaming utilise le microphone.
  • L'application capture l'audio de l'appareil et le diffuse sur l'appareil connecté.
  • Doit vérifier l'intégrité de la version du système d'exploitation de l'appareil connecté (par exemple, en utilisant l'attestation de l'appareil comme dans VerifiedBootState ).
  • Diffusez uniquement les applications pour lesquelles il n'existe qu'un seul compte correspondant dans le registre des comptes sur l'appareil (par exemple, AccountManager sur Android) sur les deux appareils. Si ce n'est pas le cas, le streaming doit être autorisé avec un code à usage unique affiché sur l'appareil source et renseigné sur l'appareil connecté. Notez que dans le cas d'appareils prenant en charge plusieurs utilisateurs (et non plusieurs comptes) avec la même isolation des données garantie comme dans Android multi-utilisateur , un utilisateur compte comme un appareil.
  • Doit arrêter la diffusion et se déconnecter immédiatement d'un appareil connecté si l'authentification du compte sur l'appareil connecté expire ou est révoquée.
  • Si l'appareil source utilise Lockscreen Knowledge Factor (LSKF), lorsque l'écran est verrouillé, l'application ne doit pas diffuser d'applications sur un appareil connecté, sauf si cet appareil dispose d'un écran de verrouillage et est déverrouillé.
  • Si l'appareil est géré par un administrateur, l'application doit respecter les politiques définies par l'administrateur concernant l'activation ou la désactivation du streaming vers les appareils à proximité (par exemple, en utilisant les paramètres DevicePolicyManager dans Android).
  • Doit garantir que l'écran distant et toutes les sources d'événements d'entrée à distance appartiennent au même périphérique logique (par exemple, un écran distant et un clavier connecté) du point de vue de l'utilisateur et que les événements sont acheminés en conséquence.
  • L'utilisateur doit pouvoir mettre fin à la diffusion depuis l'appareil local, par exemple en utilisant un bouton dans une notification persistante. Ce comportement est contrôlé par l'écran de verrouillage, si le téléphone dispose d'un verrouillage d'écran.
  • Doit afficher une option sur l'appareil source lorsque la diffusion a lieu sur un autre appareil, comme une icône dans la barre d'état ou une notification persistante.