Comprendre les exigences liées aux services de premier plan et à l'intent plein écran

Afin de permettre aux développeurs de créer des applications offrant une expérience utilisateur cohérente, nous lançons des types de services de premier plan supplémentaires, ainsi qu'un nouvel ensemble de restrictions associées. Cet article présente les futures exigences relatives aux services de premier plan et explique comment déclarer les informations liées à ces services dans la Play Console. Il détaille également les exigences liées à l'utilisation des notifications d'intent plein écran.

Exigences relatives aux services de premier plan pour Android 14

Pour vous aider à identifier les cas d'utilisation adaptés aux services de premier plan et définir clairement l'intent des tâches exécutées en arrière-plan par votre application, vous devez effectuer les opérations suivantes avant d'utiliser un service de premier plan sur Android 14 ou version ultérieure :

La section Autorisations pour les services de premier plan de notre règlement sur l'utilisation abusive des appareils et des réseaux décrit en détail les critères à respecter pour utiliser les services de premier plan. Vous devez déclarer les types de services de premier plan lorsque vous passez à Android 14.

Déclarer les informations sur vos services de premier plan dans la Play Console

Lorsque vos applications ciblent Android 14 ou version ultérieure, vous devez déclarer tous les types de services de premier plan que vous utilisez dans une nouvelle déclaration sur la page Contenu de l'application (Règles > Contenu de l'application) de la Play Console.

Pour chaque type de service de premier plan que vous déclarez, procédez comme suit :

  1. Fournissez une description des fonctionnalités de l'application qui utilisent chaque type de service de premier plan.
  2. Décrivez l'impact sur l'utilisateur si :
    • la tâche est différée par le système (ne démarre pas immédiatement) ; et/ou
    • la tâche est interrompue par le système (mise en pause et/ou redémarrée).
  3. Incluez un lien vers une vidéo présentant chaque fonctionnalité de service de premier plan. La vidéo doit montrer les étapes que l'utilisateur doit effectuer dans votre application pour déclencher la fonctionnalité.
  4. Choisissez le cas d'utilisation spécifique pour chaque type de service de premier plan. Une liste prédéfinie de cas d'utilisation vous est proposée. Le tableau ci-dessous présente certains cas d'utilisation correspondant aux types de services de premier plan. Cette liste n'est pas exhaustive. Si votre cas d'utilisation n'y figure pas, vous pouvez le saisir manuellement.

    Pour certains cas d'utilisation, nous suggérons d'utiliser d'autres API. Pour obtenir la liste de ces cas d'utilisation et des autres API recommandées, consultez le site pour les développeurs Android.

Remarque : Vous trouverez ci-dessous une liste non exhaustive. Pour déterminer si l'accès est adapté aux services de premier plan, consultez le règlement Autorisations pour les services de premier plan pour les cas d'utilisation qui ne sont pas listés ci-dessous.

Type de services de premier plan Cas d'utilisation Descriptions et exemples
TYPE_CAMERA Diffusion du flux de la caméra en arrière-plan Permet de continuer à avoir accès à la caméra en arrière-plan. Par exemple : applications de chat vidéo permettant le multitâche.
TYPE_CONNECTED_DEVICE Transfert de données continu vers un appareil externe Assure l'interaction avec les appareils externes (y compris le transfert de données) qui nécessitent une connexion Bluetooth, NFC, infrarouge, USB ou réseau. Par exemple : accessoire connecté, babyphone, casque, voiture.
TYPE_DATA_SYNC Transfert réseau : sauvegarde et restauration À utiliser avec les fonctionnalités déclenchées par l'utilisateur. Par exemple : sélectionner une photo spécifique à sauvegarder dans le cloud ou sauvegarder automatiquement toutes les nouvelles photos chaque jour.
Transfert réseau : importer ou télécharger Par exemple : extraction de données, traitement côté serveur.
Traitement local : transcodage de contenus multimédias Assure la conversion de fichiers multimédias (fichiers audio et vidéo, par exemple) d'un format à un autre (fonctionnalités de montage vidéo, par exemple).
Traitement local : importation ou exportation Inclut la migration de fichiers depuis une carte SD.
Traitement local : autre À utiliser pour les tâches déclenchées par l'utilisateur (et non pour les tâches ordinaires déclenchées par le système ou le serveur). Par exemple : chiffrement, redimensionnement, etc.
TYPE_HEALTH Synchronisation des données de santé Assure la synchronisation des données de santé pour les applications de la catégorie "Remise en forme". Cela peut concerner plusieurs applications ou la collecte de données via le suivi sur l'appareil. Par exemple : nombre de pas, suivi des entraînements.
TYPE_LOCATION Actualisation de la localisation en arrière-plan : partage de position déclenché par l'utilisateur Par exemple : fonctionnalité de localisation des amis ou analyse des activités du véhicule.
Actualisation de la localisation en arrière-plan : navigation Par exemple : navigation routière en continu sur une carte ou suivi des trajets lors du partage de course.
Géorepérage Définit les paramètres rattachés aux zones d'intérêt.
TYPE_MEDIA_PLAYBACK Lecture des contenus multimédias Permet de poursuivre la lecture audio ou vidéo en arrière-plan, y compris en streaming.
Affichage Picture-in-picture À utiliser lorsque le format multimédia est réduit pendant la lecture en arrière-plan.
TYPE_MEDIA_PROJECTION Projection multimédia ou de contenus, et diffusion ou enregistrement avec l'API MediaProjection Permet de projeter des contenus multimédias sur un écran externe ou un appareil externe avec l'API MediaProjection, y compris en streaming.
TYPE_MICROPHONE Accès audio en arrière-plan Permet de capturer une entrée audio (commandes vocales pour l'assistant virtuel, par exemple) sans sauvegarde ni enregistrement vocal.
TYPE_PHONE_CALL Appels : API Cellular/VoiP/Telecom Prend en charge différentes fonctionnalités du clavier d'appel.
TYPE_REMOTE_MESSAGING Transfert des communications texte vers un autre appareil Contribue à la continuité des tâches de messagerie d'un utilisateur lorsqu'il change d'appareil. Par exemple : autoriser les utilisateurs à envoyer des messages via un client Web en scannant un code QR et en établissant une connexion entre le client Web et le téléphone. Cette fonctionnalité ne se limite pas aux SMS.

La déclaration sera disponible d'ici novembre 2023. Nous vous laisserons le temps de la remplir, de recevoir des commentaires et d'apporter des modifications si nécessaire.

Exigences concernant l'intent plein écran pour Android 14

Vous pouvez utiliser les notifications d'intent plein écran pour partager des messages à priorité élevée qui requièrent l'attention immédiate de l'utilisateur. Pour nous assurer que cette autorisation est limitée aux cas d'utilisation prioritaires appropriés, nous introduisons à partir d'Android 14 des restrictions concernant l'utilisation de l'autorisation USE_FULL_SCREEN_INTENT. En limitant les notifications, vous contribuez à offrir une meilleure expérience utilisateur.

Si vous utilisez l'autorisation USE_FULL_SCREEN_INTENT, vous devez remplir la déclaration dans la Play Console à partir du 31 mai 2024 pour indiquer si votre application contient une fonctionnalité de base autorisée et si elle est éligible à l'attribution automatique. À compter du 22 janvier 2025, pour les applications ciblant Android 14 ou version ultérieure, cette autorisation ne sera activée par défaut que pour les applications possédant des fonctionnalités d'appel ou d'alarme. Dans les autres cas, vous devrez obtenir l'autorisation de l'utilisateur pour utiliser l'autorisation USE_FULL_SCREEN_INTENT. Pour les applications n'ayant pas rempli la déclaration ni obtenu l'autorisation d'activation par défaut, les développeurs devront demander aux utilisateurs d'accorder leur autorisation lors des nouvelles installations, et procéder à une dégradation élégante de l'expérience en cas de refus.

Questions fréquentes

Qu'est-ce qui change pour les services de premier plan dans Android 14 ?

Nous lançons plusieurs nouveaux types de services de premier plan. Vous devrez déclarer chaque type de service de premier plan avec l'autorisation correspondante. Par exemple, si vous déclarez le type de service de premier plan "caméra", vous devez également déclarer l'autorisation FOREGROUND_SERVICE_CAMERA. L'utilisation du premier plan doit également respecter les autres exigences décrites dans notre Règlement sur l'utilisation abusive des appareils et des réseaux.

Comment savoir quel type de service de premier plan utiliser ?

Choisissez le type de service de premier plan qui correspond le mieux à l'utilisation que vous souhaitez en faire. Par exemple, une application d'exercice qui suit l'activité physique d'un utilisateur peut déclarer le type de service de premier plan "santé". Vous pouvez également choisir plusieurs types de services de premier plan, le cas échéant.

Qu'est-ce qu'une autorisation de service de premier plan, et doit-elle être accordée par l'utilisateur avant de démarrer un service de premier plan ?

Lorsque les applications qui ciblent Android 14 utilisent un service de premier plan, les développeurs doivent déclarer l'autorisation appropriée pour ce type de service. Par exemple, si votre application utilise le type de service de premier plan "position", vous devez déclarer l'autorisation FOREGROUND_SERVICE_LOCATION. Les autorisations de service de premier plan qui renvoient à un type de service de premier plan spécifique sont définies comme des autorisations normales. Elles sont accordées par défaut au moment de l'installation. Les utilisateurs ne peuvent pas les révoquer.

Y a-t-il d'autres exigences à respecter, outre déclarer l'autorisation de service de premier plan appropriée ?

Selon le type de service de premier plan, d'autres exigences système peuvent s'appliquer. Il peut s'agir d'autorisations d'exécution que les utilisateurs doivent accorder avant qu'elles puissent être utilisées. Par exemple, si vous utilisez le type de service de premier plan "position", vous devez également accorder l'autorisation ACCESS_COARSE_LOCATION ou ACCESS_FINE_LOCATION. Veuillez consulter la documentation pour obtenir les informations les plus récentes.

Que se passe-t-il si mon cas d'utilisation de premier plan ne correspond à aucun des types de services de premier plan définis ?

Dans certains cas limités, si votre cas d'utilisation répond aux autres caractéristiques requises pour l'utilisation de services de premier plan (comme décrit dans le règlement), vous pouvez déclarer le type de service de premier plan TYPE_SPECIAL_USE. Tous les types de services de premier plan sont soumis à examen.

Qu'entend-on par "perceptible par l'utilisateur" ?

"Perceptible par l'utilisateur" signifie que l'utilisateur doit savoir qu'une tâche de service de premier plan s'exécute sur son appareil. Les utilisateurs peuvent être considérés comme avertis s'ils lancent l'action eux-mêmes. C'est par exemple le cas si l'utilisateur lance l'écoute d'un titre ou le suivi de sa course à pied. Votre application peut également informer les utilisateurs qu'un service de premier plan est activé en présentant une notification claire et précise dans la barre des tâches de l'appareil.

Que se passe-t-il si je cible des versions antérieures à Android 14 ?

Si vous ciblez une version d'Android antérieure à Android 14, continuez à utiliser l'attribut android:foregroundServiceType dans l'élément <service> du fichier manifeste de votre application.

Quelle est la différence entre le type de service de premier plan dataSync et le transfert de données à l'initiative de l'utilisateur ?

Les tâches de transfert de données à l'initiative de l'utilisateur sont conçues pour simplifier les transferts de données sur le réseau. Elles offrent un suivi des contraintes et gèrent automatiquement les wakelocks. Le type de service de premier plan dataSync peut inclure le transfert de données en local ou sur un réseau, ainsi que le traitement de données localement sur l'appareil. Si, dans votre cas d'utilisation, vous transférez des données sur un réseau (Wi-Fi, mobile ou Bluetooth, par exemple) en réponse à une demande explicite de l'utilisateur, nous vous recommandons d'utiliser la tâche de transfert de données initiée par l'utilisateur plutôt que le type de service de premier plan dataSync.

Qu'est-ce qui change pour l'intent plein écran dans Android 14 ?

Pour Android 14, USE_FULL_SCREEN_INTENT (qui était auparavant une autorisation normale) devient une autorisation d'accès spéciale pour les applications. Seules les applications dont la fonctionnalité de base est un cas d'utilisation hautement prioritaire (comme régler une alarme ou recevoir des appels téléphoniques ou vidéo) se verront automatiquement accorder l'autorisation USE_FULL_SCREEN_INTENT. Considérez la fonctionnalité de base comme la fonction première de votre application, sans laquelle elle ne fonctionnerait pas ou serait inutilisable. L'autorisation peut toujours être accordée à d'autres applications, mais seulement par l'utilisateur.

Quand ces modifications concernant l'intent plein écran dans Android 14 prendront-elles effet ?

Ces modifications prendront effet le 31 mai 2024.

Si mon application est un réveil ou permet de recevoir des appels téléphoniques ou vidéo, comment m'assurer qu'elle dispose automatiquement de l'autorisation ?

Lorsque votre application cible Android 14 ou une version ultérieure, vous avez la possibilité de la déclarer comme fonctionnalité de base pour intent plein écran sur la page Contenu de l'application (Règles > Contenu de l'application) dans la Play Console. La déclaration sera disponible à partir d'avril 2024, et nous vous laisserons le temps de la remplir.

Ces informations vous-ont elles été utiles ?

Comment pouvons-nous l'améliorer ?

Vous avez encore besoin d'aide ?

Essayez les solutions ci-dessous :

true
Recherche
Effacer la recherche
Fermer le champ de recherche
Applications Google
Menu principal
8074486056688453848
true
Rechercher dans le centre d'aide
true
true
true
true
true
92637
false
false