ASSISTANT |
Au moins l'un des éléments suivants :
- 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 de 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 la 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.
|
BROWSER |
Tous les éléments suivants :
- L'application comporte une activité que les applications peuvent appeler par le biais de requêtes d'intent 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 être en mesure d'afficher le contenu correspondant au lien sélectionné sans intervention supplémentaire de l'utilisateur.
- L'application doit pouvoir fournir les informations de géolocalisation actuelles de l'appareil aux pages Web lorsqu'elles sont demandées et que l'utilisateur approuve la demande.
|
DIALER |
Tous les éléments suivants :
- L'application dispose d'une activité que les applications peuvent appeler via des requêtes d'intent implicite, qui fournit l'interface utilisateur en cours d'appel lorsque l'appareil est en communication.
- L'application peut gérer les intents d'appel entrant, afficher les informations
associées à l'appel (par exemple, le numéro de téléphone de l'appelant) à l'utilisateur et lui permettre de répondre à l'appel ou de le refuser.
- L'application permet à l'utilisateur de passer des appels et de consulter l'historique des appels sur son appareil.
|
SMS |
Tous les éléments suivants :
- L'application répond à toutes les exigences concernant les applications de SMS.
- L'application comporte une activité que les applications peuvent appeler par le biais de requêtes d'intent implicite, 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 pouvant être appelé par des intents implicites, qui peuvent 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 envoyer des messages via son propre système de messagerie.
- L'application comporte 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 de SMS et d'en informer les utilisateurs.
|
EMERGENCY |
Tous les éléments suivants :
- L'application est une application système.
- L'application comporte une activité qui présente les informations d'urgence de l'utilisateur.
Tout le monde peut accéder à cet écran via le bouton "Urgence" de l'activité du clavier téléphonique d'urgence.
|
HOME |
L'application comporte 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 et des widgets, et permettre la navigation à l'aide de boutons ou de gestes (par exemple, balayer l'écran vers le haut pour afficher toutes les applications).
|
CALL_REDIRECTION |
L'application dispose d'un service protégé par l'autorisation android.permission.BIND_CALL_REDIRECTION_SERVICE , à laquelle le framework de télécommunications peut se lier. Le service reçoit le numéro de téléphone sortant du framework de télécommunications et effectue l'une des actions suivantes :
- Autorisez l'appel tel quel.
- Modifiez le numéro sortant pour qu'il passe par un numéro de substitution.
- Annulez l'appel.
|
CALL_SCREENING |
L'application dispose d'un service contrôlé par l'autorisation android.permission.BIND_SCREENING_SERVICE , qui remplit deux fonctions :
- Blocage et filtrage des appels : le service peut choisir les appels à envoyer à l'application de téléphone sur l'appareil (et potentiellement à faire sonner, en fonction du mode Ne pas déranger ou du volume) et ceux à envoyer silencieusement à la messagerie vocale.
- Identification des appels : le service peut identifier un appel et afficher des informations à son sujet dans une interface utilisateur.
|
SYSTEM_GALLERY |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- L'application fournit une UI permettant aux utilisateurs de stocker, d'organiser et d'afficher leurs vidéos et images.
|
SYSTEM_AUTOMOTIVE_CLUSTER |
Tous les éléments suivants :
- L'application est une application système sur Automotive.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- L'application permet aux utilisateurs de répondre aux appels téléphoniques et d'accéder aux listes de contacts et aux journaux d'appels sur un tableau de bord automobile (généralement situé à côté du volant).
|
COMPANION_DEVICE_WATCH |
L'application peut envoyer des requêtes pour être associée à une montre et la gérer (en utilisant l'API fournie par la classe CompanionDeviceManager ). Lorsque la montre et l'application sont connectées via l'UI fournie par l'application, les utilisateurs peuvent gérer leur montre depuis l'application, y compris synchroniser les contacts et l'agenda, et gérer les notifications et les appels téléphoniques.
|
SYSTEM_AUTOMOTIVE_PROJECTION |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer 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 aux applications et de les contrôler sur les téléphones Android, y compris la musique, la navigation, les appels téléphoniques et la recherche, à l'aide des mécanismes de saisie du véhicule, y compris l'écran tactile, les commandes au volant et les commandes vocales.
|
SYSTEM_SHELL |
Tous les éléments suivants :
- L'application est une application système à laquelle est attribué l'UID
Process.SHELL_UID .
- Seuls les OEM peuvent attribuer 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 l'OS Android. Par exemple, afficher le contenu d'un dossier ou lancer des applications. Les commandes shell peuvent être exécutées de manière programmatique par les applications (si les autorisations nécessaires ont été accordées) ou à partir de l'outil ADB.
|
SYSTEM_CONTACTS |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- L'application fournit une UI 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 modifie ses contacts depuis l'application. Les utilisateurs peuvent également appeler, envoyer des e-mails ou des messages à leurs contacts depuis l'application.
|
SYSTEM_SPEECH_RECOGNIZER |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- L'application fournit un service capable d'effectuer la reconnaissance vocale.
- Lorsque l'application reçoit des flux de micro en direct d'une autre application pour la reconnaissance vocale, elle attribue correctement l'utilisation du micro à l'application appelante et met à jour les statistiques de fonctionnement de l'application en conséquence.
|
SYSTEM_WIFI_COEX_MANAGER |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- L'application dispose d'un service qui définit de manière dynamique une liste de canaux Wi-Fi que l'appareil doit éviter d'utiliser en raison d'interférences cellulaires.
|
SYSTEM_WELLBEING |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- L'application doit permettre aux utilisateurs de réduire les distractions et de leur fournir des statistiques sur leur utilisation de l'appareil (par exemple, le temps passé devant l'écran par semaine).
|
SYSTEM_TELEVISION_NOTIFICATION_HANDLER |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- L'application doit afficher des notifications heads-up aux utilisateurs sur les appareils TV. L'application doit également afficher les notifications actives actuelles lorsque l'intent
android.app.action.TOGGLE_NOTIFICATION_HANDLER_PANEL est envoyé (à partir de SystemUI).
|
SYSTEM_COMPANION_DEVICE_PROVIDER |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- L'application doit pouvoir détecter les périphériques à proximité. Elle doit disposer d'une UI permettant à l'utilisateur de confirmer qu'un périphérique donné doit être associé à une application et géré par celle-ci. Lorsque 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 d'association) et peut lancer le processus d'association.
|
SYSTEM_DOCUMENT_MANAGER |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- L'application comporte une activité qui permet aux utilisateurs d'accéder aux documents existants et d'en créer sur l'appareil.
- L'appli doit répondre à toutes les exigences décrites dans la section 2.2.3 du CDD Android. Software
sous l'en-tête
[3.2.3.1/H-0-1].
|
SYSTEM_ACTIVITY_RECOGNIZER |
Tous les éléments suivants :
- L'application est une application système.
- L'application dispose d'un service contrôlé par
android.permission.ACTIVITY_RECOGNITION , qui peut effectuer la reconnaissance d'activité (par exemple, la course à pied ou le vélo).
|
SYSTEM_UI |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer 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 réglages rapides, la barre de notification, l'écran de verrouillage, le contrôle du volume.
|
SYSTEM_TELEVISION_REMOTE_SERVICE |
Tous les éléments suivants :
- L'application est une application système sur Android TV.
- Seuls les OEM peuvent attribuer 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 micro intégré à la télécommande) à la plate-forme.
|
SYSTEM_UI_INTELLIGENCE |
Tous les éléments suivants :
- Service préinstallé qui fournit, par le biais d'API de framework (API publiques ou système), un processeur intelligent sur l'appareil pour les fonctionnalités de l'UI système (par exemple, la prédiction et l'affichage des prochaines applications pour les utilisateurs).
- Le service doit répondre à toutes les exigences décrites dans la section 9.8.6 Content Capture du CDD Android.
- Le service ne peut pas disposer de 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.
- Le service ne peut pas se lier aux applications, à l'exception des applications système suivantes : Bluetooth, Contacts, Média, 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 système.
- Le service ne peut pas partager de données avec des applications, sauf si l'utilisateur effectue une action directe (par exemple, s'il appuie explicitement sur un bouton chaque fois que les données sont partagées).
|
SYSTEM_AMBIENT_AUDIO_INTELLIGENCE |
Tous les éléments suivants :
- 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, la reconnaissance des titres diffusés à proximité de l'appareil).
|
SYSTEM_AUDIO_INTELLIGENCE |
Tous les éléments suivants :
- Identique aux conditions pour
SYSTEM_UI_INTELLIGENCE , sauf que le service préinstallé fournit un processeur intelligent sur l'appareil pour l'audio (par exemple, pour sous-titrer des vidéos, des podcasts, des appels téléphoniques ou vidéo, et des messages audio).
|
SYSTEM_NOTIFICATION_INTELLIGENCE |
Tous les éléments suivants :
- Identique aux conditions pour
SYSTEM_UI_INTELLIGENCE , sauf que le service préinstallé fournit un processeur intelligent sur l'appareil pour les notifications (par exemple, en suggérant des réponses et des actions pour les notifications de messages).
|
SYSTEM_TEXT_INTELLIGENCE |
Tous les éléments suivants :
- Identique aux conditions pour
SYSTEM_UI_INTELLIGENCE ,
sauf que le service préinstallé fournit un processeur intelligent sur l'appareil pour le texte (par exemple, pour la traduction en direct ou la saisie automatique).
|
SYSTEM_VISUAL_INTELLIGENCE |
Tous les éléments suivants :
- 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, en gardant l'écran du téléphone allumé lorsque l'utilisateur le regarde ou en déterminant 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 les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- Cas d'utilisation autorisés :
- Streaming, cast ou mirroring d'applications permettant le streaming, le cast ou le mirroring depuis un appareil Android tel qu'un téléphone mobile ou une tablette vers un ordinateur de bureau ou un ordinateur portable.
- Lorsque vous établissez la connexion initiale de l'appareil A à l'appareil B :
- L'association DOIT être autorisée par un code à usage unique affiché sur l'appareil source (A) et saisi sur l'appareil connecté (B).
Sinon, si les deux appareils ont au moins un compte correspondant dans leur Android AccountManager, l'utilisateur PEUT confirmer l'association en saisissant le mot de passe du compte sur l'appareil connecté (B).
- Les deux appareils doivent être à proximité
1 l'un de l'autre pendant l'association.
- Les deux appareils doivent être à proximité l'un de l'autre
1 pendant le streaming.
- L'application peut créer et gérer des canaux de communication avec les appareils connectés afin que les appareils 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 un chiffrement de bout en bout.
- L'application peut envoyer des notifications de l'appareil source (A) à l'appareil connecté (B) pour permettre à l'utilisateur d'effectuer des actions sur les notifications sur l'appareil connecté (B).
- être capable de diffuser les métadonnées nécessaires à la diffusion d'applications sur l'appareil connecté (B), comme la liste des applications disponibles sur l'appareil source (A).
- être capable de diffuser des applications depuis l'appareil source (A) vers l'appareil connecté (B) une fois que l'utilisateur a indiqué sa préférence en donnant son consentement explicite (soit sur l'appareil source (A), soit sur l'appareil connecté (B)).
- être capable de rejouer (injecter) les événements qui se produisent sur une application diffusée en streaming sur l'appareil connecté (B) sur l'appareil source (A). Par exemple, en rejouant un événement tactile sur l'appareil connecté (B) aux mêmes coordonnées que sur l'appareil source (A), ou en rejouant un événement d'entrée qui s'est produit sur l'appareil connecté (B) avec la même sémantique d'entrée que sur l'appareil source (A).
- L'application peut remplacer le flux du micro de l'appareil source par celui d'un appareil connecté lorsqu'une application diffusée en streaming utilise le micro.
- L'application capture le son de l'appareil source (A) et le diffuse sur l'appareil connecté (B).
- Il est RECOMMANDÉ de bloquer l'accès aux applications de paramètres et aux plates-formes de téléchargement d'applications depuis l'appareil connecté (B).
- À partir d'Android 16, la capture d'écran et la lecture d'écran de contenu sensible, tel que les
fenêtres et surfaces sécurisées, DOIVENT être empêchées sur l'appareil connecté (B).
- DOIT vérifier l'intégrité de la version de l'OS de l'appareil connecté (par exemple, en utilisant l'attestation de l'appareil comme dans
VerifiedBootState ).
- Ne diffusez en streaming que les applications pour lesquelles il n'existe qu'un seul compte correspondant dans le registre des comptes sur l'appareil (par exemple, la classe
AccountManager sur Android) sur les deux appareils. Si ce n'est pas le cas, le streaming DOIT être autorisé à l'aide d'un code à usage unique affiché sur l'appareil source (A) et saisi sur l'appareil connecté (B).
Notez que dans le cas d'appareils compatibles avec plusieurs utilisateurs (et non plusieurs comptes) avec la même isolation fiable des données que dans Android multi-utilisateur, un utilisateur est comptabilisé comme un appareil.
- DOIT arrêter le streaming et se déconnecter de l'appareil connecté (B)
immédiatement si l'authentification du compte sur l'appareil connecté
(B) expire ou est révoquée.
- DOIT arrêter le streaming et se déconnecter de l'appareil connecté (B) en cas de délai d'inactivité de l'appareil connecté (B) sur lequel le contenu de l'écran est visible. MAY keep the connected device's screen on for cases
such as WakeLock, that keep the Android device's screen on. Un délai d'inactivité DOIT être présent. Si l'appareil connecté (B) ne dispose pas de délai d'inactivité, un délai d'inactivité de 5 minutes maximum DOIT être utilisé.
- Si l'appareil source (A) utilise le facteur de connaissance de l'écran de verrouillage (LSKF), lorsque l'écran est verrouillé, l'application NE DOIT PAS diffuser d'applications sur un appareil connecté (B), sauf si l'appareil connecté (B) dispose d'un écran de verrouillage et est déverrouillé.
- Si l'appareil source (A) est géré par un administrateur, l'application DOIT respecter les règles définies par l'administrateur concernant l'activation ou la désactivation du streaming vers des appareils à proximité (par exemple, à l'aide des paramètres
DevicePolicyManager dans Android).
- DOIT s'assurer que les écrans distants et toutes les sources d'événements d'entrée à distance appartiennent au même appareil logique (par exemple, un écran distant et un clavier connecté) du point de vue de l'utilisateur et que les événements sont routés en conséquence.
- L'utilisateur DOIT pouvoir mettre fin au streaming depuis l'appareil source (A), par exemple en utilisant un bouton dans une notification persistante. Ce comportement est contrôlé par l'écran de verrouillage si l'appareil source (A) est protégé par un verrouillage de l'écran. DOIT afficher cette affordance persistante sur l'appareil source (A), qui est toujours visible et au-dessus de la ligne de flottaison.
- DOIT afficher une affordance sur l'appareil source (A) lorsque le streaming a lieu sur un autre appareil, comme une icône dans la barre d'état ou une notification persistante.
|
DEVICE_POLICY_MANAGEMENT |
Tous les éléments suivants :
- 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é par défaut au nom du package défini par l'OEM lors de l'expédition de l'appareil.
- L'application doit pouvoir provisionner un profil géré (propriétaire du profil) ou un appareil géré (propriétaire de l'appareil), y compris télécharger et installer le client Device Policy approprié pour devenir le propriétaire de l'appareil ou du profil, si nécessaire.
- L'application peut éventuellement mettre à jour dynamiquement les ressources, telles que les chaînes et les éléments graphiques utilisés pour la gestion des règles relatives aux 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 le cas du provisionnement du propriétaire du profil, lorsque l'application du titulaire du 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 les éléments suivants :
- L'application est une application système.
- L'application a pour seul objectif de détecter les applications potentiellement dangereuses (applications susceptibles de faire courir un risque aux utilisateurs, à leurs données ou à leurs appareils, comme les applications de type cheval de Troie, d'hameçonnage et d'espionnage) ou les logiciels mobiles indésirables.
- L'application doit répondre à toutes les exigences décrites dans la section 9.8.6 de la CDD Android.
Données au niveau de l'OS et données ambiantes.
- L'application ne doit pas déclarer l'autorisation normale
android.permission.INTERNET . Il doit plutôt accéder à Internet via des API bien définies dans un projet Open Source.
- L'application ne doit pas se lier à d'autres applications, à l'exception des applications système suivantes : Permission Controller et les composants fournissant les API de téléphonie et d'Internet. Chaque liaison autorisée doit être configurée explicitement via la configuration
<allow-association> dans la configuration système.
- L'application ne doit pas partager de données avec d'autres applications, sauf si l'utilisateur effectue une action directe (par exemple, s'il appuie explicitement sur un bouton chaque fois que les données sont partagées).
|
SYSTEM_AUTOMOTIVE_CALENDAR_SYNC_MANAGER |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- L'application doit transférer les données d'agenda du téléphone iOS ou Android de l'utilisateur vers l'appareil Android Auto. L'appareil Android Auto doit stocker ces données d'agenda dans le fournisseur d'agenda.
- L'application doit fournir un composant d'UI sur le téléphone que l'utilisateur peut utiliser pour activer la synchronisation de l'agenda et sélectionner les agendas à synchroniser. L'application doit fournir un composant d'UI sur le téléphone que l'utilisateur peut utiliser pour désactiver la synchronisation de l'agenda.
- L'application doit fonctionner sans connexion Internet. Par exemple, en utilisant des connexions filaires ou sans fil directes.
|
AUTOMOTIVE_NAVIGATION |
Tous les éléments suivants :
- L'application dispose d'une activité que les applications peuvent appeler par le biais de requêtes d'intent implicites, qui affiche la position actuelle de l'utilisateur et ses environs.
- L'application comporte une activité que les applications peuvent appeler par le biais de requêtes d'intent implicites, ce qui permet à l'utilisateur d'accéder à une zone géographique spécifique.
- L'application comporte une activité lancée sur le groupe d'instruments lorsque l'application détient le focus de navigation.
L'activité doit afficher la position actuelle de l'utilisateur et son environnement, et lui permettre d'accéder à une zone géographique spécifique.
|
COMPANION_DEVICE_COMPUTER |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- Permet aux utilisateurs de dupliquer les notifications et d'accéder aux photos et contenus multimédias du téléphone sur un ordinateur connecté.
|
SYSTEM_SETTINGS_INTELLIGENCE |
Au moins l'un des éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- Dispose d'un service qui fournit des fonctionnalités intelligentes à l'application Paramètres, telles que des suggestions et la recherche.
|
NOTES |
Tous les éléments suivants :
|
COMPANION_DEVICE_GLASSES |
L'application peut envoyer des requêtes pour être associée à un appareil de lunettes et le gérer (en utilisant l'API fournie par la classe CompanionDeviceManager ). Lorsque les lunettes et l'application sont connectées à l'aide de l'UI fournie par CDM, les utilisateurs peuvent gérer leurs lunettes en leur donnant accès aux contacts et en leur accordant l'autorisation de gérer les notifications et les appels téléphoniques.
|
COMPANION_DEVICE_NEARBY_DEVICE_STREAMING |
Tous les éléments suivants :
- L'application est une application système.
- Seuls les OEM peuvent attribuer ce rôle à l'application.
- Cas d'utilisation autorisés :
- Streaming d'applications depuis un appareil Android tel qu'un téléphone mobile ou une tablette vers un véhicule.
- Streaming d'applications depuis un appareil Android tel qu'un téléphone mobile ou une tablette vers un appareil XR.
- Lorsque vous établissez la connexion initiale de l'appareil A à l'appareil B :
- L'association DOIT être autorisée par un code à usage unique affiché sur l'appareil source (A) et saisi sur l'appareil connecté (B).
Sinon, si les deux appareils ont au moins un compte correspondant dans leur Android AccountManager, l'utilisateur PEUT confirmer l'association en saisissant le mot de passe du compte sur l'appareil connecté (B).
- Les deux appareils doivent être à proximité
1 l'un de l'autre pendant l'association.
- Les deux appareils doivent être à proximité l'un de l'autre
1 pendant le streaming.
- L'application peut créer et gérer des canaux de communication avec les appareils connectés afin que les appareils 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 un chiffrement de bout en bout.
- L'application peut envoyer des notifications de l'appareil source (A) à l'appareil connecté (B) pour permettre à l'utilisateur d'effectuer des actions sur les notifications sur l'appareil connecté (B).
- être capable de diffuser les métadonnées nécessaires à la diffusion d'applications sur l'appareil connecté (B), comme la liste des applications disponibles sur l'appareil source (A).
- être capable de diffuser des applications depuis l'appareil source (A) vers l'appareil connecté (B) une fois que l'utilisateur a indiqué sa préférence en donnant son consentement explicite (soit sur l'appareil source (A), soit sur l'appareil connecté (B)).
- être capable de rejouer (injecter) les événements qui se produisent sur une application diffusée en streaming sur l'appareil connecté (B) sur l'appareil source (A). Par exemple, en rejouant un événement tactile sur l'appareil connecté (B) aux mêmes coordonnées que sur l'appareil source (A), ou en rejouant un événement d'entrée qui s'est produit sur l'appareil connecté (B) avec la même sémantique d'entrée que sur l'appareil source (A).
- L'application peut remplacer le flux du micro de l'appareil source par celui d'un appareil connecté lorsqu'une application diffusée en streaming utilise le micro.
- L'application capture le son de l'appareil source (A) et le diffuse sur l'appareil connecté (B).
- Il est RECOMMANDÉ de bloquer l'accès aux applications de paramètres et aux plates-formes de téléchargement d'applications depuis l'appareil connecté (B).
- À partir d'Android 25Q2, la capture d'écran et la lecture d'écran de contenus sensibles, tels que les
fenêtres et surfaces sécurisées, DOIVENT être empêchées sur l'appareil connecté (B).
- DOIT vérifier l'intégrité de la version de l'OS de l'appareil connecté (par exemple, en utilisant l'attestation de l'appareil comme dans
VerifiedBootState ).
- Ne diffusez en streaming que les applications pour lesquelles il n'existe qu'un seul compte correspondant dans le registre des comptes sur l'appareil (par exemple, la classe
AccountManager sur Android) sur les deux appareils. Si ce n'est pas le cas, le streaming DOIT être autorisé à l'aide d'un code à usage unique affiché sur l'appareil source (A) et saisi sur l'appareil connecté (B).
Notez que dans le cas d'appareils compatibles avec plusieurs utilisateurs (et non plusieurs comptes) avec la même isolation fiable des données que dans Android multi-utilisateur, un utilisateur est comptabilisé comme un appareil.
- DOIT arrêter le streaming et se déconnecter de l'appareil connecté (B)
immédiatement si l'authentification du compte sur l'appareil connecté
(B) expire ou est révoquée.
- DOIT arrêter le streaming et se déconnecter de l'appareil connecté (B) en cas de délai d'inactivité de l'appareil connecté (B) sur lequel le contenu de l'écran est visible. MAY keep the connected device's screen on for cases
such as WakeLock, that keep the Android device's screen on. Un délai d'inactivité DOIT être présent. Si l'appareil connecté (B) ne dispose pas de délai d'inactivité, un délai d'inactivité de 5 minutes maximum DOIT être utilisé.
- Si l'appareil source (A) utilise le facteur de connaissance de l'écran de verrouillage (LSKF), lorsque l'écran est verrouillé, l'application NE DOIT PAS diffuser d'applications sur un appareil connecté (B), sauf si l'appareil connecté (B) dispose d'un écran de verrouillage et est déverrouillé.
- Si l'appareil source (A) est géré par un administrateur, l'application DOIT respecter les règles définies par l'administrateur concernant l'activation ou la désactivation du streaming vers des appareils à proximité (par exemple, à l'aide des paramètres
DevicePolicyManager dans Android).
- DOIT s'assurer que les écrans distants et toutes les sources d'événements d'entrée à distance appartiennent au même appareil logique (par exemple, un écran distant et un clavier connecté) du point de vue de l'utilisateur et que les événements sont routés en conséquence.
- L'utilisateur DOIT pouvoir mettre fin au streaming depuis l'appareil source (A), par exemple en utilisant un bouton dans une notification persistante. Ce comportement est contrôlé par l'écran de verrouillage si l'appareil source (A) est protégé par un verrouillage de l'écran. DOIT afficher cette affordance persistante sur l'appareil source (A), qui est toujours visible et au-dessus de la ligne de flottaison.
- DOIT afficher une affordance sur l'appareil source (A) lorsque le streaming a lieu sur un autre appareil, comme une icône dans la barre d'état ou une notification persistante.
|
WALLET |
Au choix :
- L'application dispose d'un service APDU NFC qui enregistre de manière statique au moins un AID dans la catégorie PAIEMENT.
- L'application implémente une instance de
QuickAccessWalletService .
|