Schéma pour les bundles de métadonnées d'application

À partir d'Android 14, le programme d'installation du package Android peut ingérer des métadonnées concernant une application, comme les pratiques en matière de sécurité des données, à utiliser dans les fonctionnalités de la plate-forme Android telles que en tant que nouvelle invite d'autorisation d'accéder à la position.

Vous pouvez fournir ces métadonnées de deux façons:

  • Pour une application préchargée sur l'image système, les fabricants d'appareils peuvent fournir des métadonnées sur l'application en ajoutant un fichier XML à l'image système ; avec le bundle persistant décrit ci-dessous.

  • Pour les applications en cours d'installation ou de mise à jour, pour spécifier ces métadonnées, les programmes d'installation d'applications doivent transmettre un objet PersistableBundle à la méthode setAppMetadata().

Le bundle persistant de premier niveau se compose des paires clé/valeur suivantes. Sauf indication contraire, chaque clé est facultative.

version (obligatoire)
Le numéro de version du format des métadonnées de l'application. Utilisez 2 comme valeur pour ceci version actuelle et long comme type. Si les clés ou les types de contenu attendus de AppMetadata changent, Android modifie le numéro de version.
safety_labels
Un objet PersistableBundle qui spécifie les libellés de sécurité de l'application.
system_app_safety_label
Un objet PersistableBundle qui spécifie le system-app-safety-label. Pour les applications agissant en tant que service système, le Le bundle system_app_safety_label est utilisé à la place du bundle safety_labels.
transparency_info
Un objet PersistableBundle qui spécifie la transparence de l'application informations.

Format des libellés de sécurité

Le bundle safety_labels contient les paires clé/valeur suivantes :

version (obligatoire)
Le numéro de version du format des libellés de sécurité. Utilisez 1 comme valeur pour ceci la version actuelle et long comme type.
data_labels
Un objet PersistableBundle qui spécifie les données collectées par l'application et partages
security_labels
Un objet PersistableBundle qui spécifie les méthodes de suppression des données et pratiques de chiffrement
third_party_verification
Un objet PersistableBundle qui spécifie comment la sécurité des données de l'application ces pratiques sont validées par un tiers.

Données collectées et partagées

Le bundle data_labels contient les paires clé/valeur suivantes :

data_collected
Un objet PersistableBundle qui spécifie les types de données que l'application collecte.
data_shared
Un objet PersistableBundle qui spécifie les types de données que l'application partages.

Catégories de données

Les clés data_collected et data_shared utilisent le format de bundle data_category, qui contient les paires clé/valeur présentées dans la liste suivante. Chaque clé est mappée à un objet PersistableBundle qui spécifie les types de données d'une certaine catégorie.

  • personal
  • financial
  • location
  • email_text_message
  • photo_video
  • audio
  • storage
  • health_fitness
  • contacts
  • calendar
  • identifiers
  • app_performance
  • actions_in_app
  • search_and_browsing

Types de données

Chaque clé du bundle data_category est mappée à un autre bundle qui utilise le format data_type. Les clés que vous spécifiez au format data_type dépendent de ce que vous choisissez pour une data_category.

Les possibles paires clé-valeur data_type apparaissent dans les listes suivantes. La pour chacune de ces clés est un objet PersistableBundle qui décrit le ses pratiques en matière d'utilisation des données pour ce type de données particulier. Certains types de données n'utilisent qu'une seule clé.

Personnel

  • name
  • email_address
  • physical_address
  • phone_number
  • race_ethnicity
  • political_or_religious_beliefs
  • sexual_orientation_or_gender_identity
  • personal_identifiers
  • other

Finance

  • card_bank_account
  • purchase_history
  • credit_score
  • other

Localisation

  • approx_location
  • precise_location

E-mails et messages

  • emails
  • text_messages
  • other

Photos et vidéos

  • photos
  • videos

Audio

  • sound_recordings
  • music_files
  • other

Espace de stockage

files_docs

Santé et remise en forme

  • health
  • fitness

Contacts

contacts

Agenda

calendar

Identifiants

other

Performances de l'application

  • crash_logs
  • performance_diagnostics
  • other

Actions dans l'application

  • user_interaction
  • in_app_search_history
  • installed_apps
  • user_generated_content
  • other

Recherche et navigation

web_browsing_history

Consommation des données

Le bundle data_usage contient les paires clé/valeur suivantes :

purposes(obligatoire)

Un tableau d'entiers qui représente des raisons spécifiques de la collecte ou partage des données et utilise PersistableBundle putIntArray . Vous devez spécifier au moins l'un des objectifs définis ci-dessous pour chaque lot.

  • 1 : PURPOSE_APP_FUNCTIONALITY
  • 2 : PURPOSE_ANALYTICS
  • 3 : PURPOSE_DEVELOPER_COMMUNICATIONS
  • 4 : PURPOSE_FRAUD_PREVENTION_SECURITY
  • 5 : PURPOSE_ADVERTISING
  • 6:  PURPOSE_PERSONALIZATION
  • 7 : PURPOSE_ACCOUNT_MANAGEMENT
is_collection_optional

Valeur booléenne. Indique si les utilisateurs peuvent activer ou désactiver la collecte de données.

Remarque : Définissez cette valeur uniquement pour data_category groupes représentant la collecte de données ne pas définir pour le partage des données.

ephemeral

Valeur booléenne. Indique si l'application traite les données côté serveur uniquement en mémoire, pas sur le disque, et que l'application conserve les données que nécessaire pour assurer le traitement des données requête.

Remarque : Définissez cette valeur uniquement pour data_category groupes représentant la collecte de données ne pas définir pour le partage des données.

Pratiques de suppression et de chiffrement des données

Le bundle security_labels contient des paires clé/valeur qui représentent les pratiques de suppression et de chiffrement des données de l'application :

is_data_deletable
Valeur booléenne. Indique si l'application permet ou non à l'utilisateur de demander l'application de supprimer ses données utilisateur.
is_data_encrypted
Valeur booléenne. Indique si toutes les données utilisateur collectées par l'application sont chiffrées lors de leur transfert.

Service de validation tiers

Le bundle third_party_verification se compose d'une seule clé, url. Cette URL, représentée par une valeur de chaîne, spécifie le site Web tiers utilisé pour en vérifiant les informations de sécurité des données de l'application.

Format des étiquettes de sécurité du service système

Pour les applications qui agissent en tant que service système, le bundle system_app_safety_label est utilisé à la place du bundle safety_labels et contient les paires clé/valeur suivantes :

url (obligatoire)

  • URL qui redirige vers une page contenant des informations sur la sécurité de l'application qui est en tant que service système.
  • Utilisez string comme type.
  • Si ce n'est pas le cas, l'URL des règles de confidentialité doit être utilisée une création de remplacement.
  • Remarque: Le Google Play Store utilise privacy_policy comme solution de remplacement.

Format des informations concernant la transparence

Le bundle transparency_info contient les paires clé/valeur suivantes :

developer_info
Un objet PersistableBundle qui spécifie des informations sur l'application développeur.
app_info
Un objet PersistableBundle qui spécifie des informations sur l'application.

Informations sur le développeur

Le bundle developer_info contient les paires clé/valeur suivantes :

developer_#
Objet PersistableBundle qui identifie le développeur. La developer_info contient un ou plusieurs developer_#, où # est un entier. Par exemple developer_0, developer_1, developer_2, etc.

Développeur

Le bundle developer_# contient la clé-valeur suivante :

name (obligatoire)
Chaîne indiquant le nom du développeur.
email (obligatoire)
Chaîne indiquant l'adresse e-mail du développeur.
address (obligatoire)
Chaîne indiquant l'adresse postale du développeur.
country_region (obligatoire)
Chaîne indiquant le pays ou la région du développeur.
website
Chaîne indiquant le site Web du développeur.

app_registry

  • Chaîne qui indique le magasin ou le registre du développeur.
  • Si le développeur est également enregistré auprès d'un magasin ou d'un autre registre, la valeur doit correspondre au nom du package Android du magasin ou à l'URL du registre.
  • Vous pouvez saisir plusieurs magasins pour une même entrée.
  • Pour Google Play, utilisez com.android.vending.
  • Si le développeur est un SDK répertorié dans le Google Play SDK Index, omettez cette .
  • Si un développeur n'est enregistré sur aucune plate-forme de téléchargement d'applications ni dans aucun registre, omettez cette .

app_registry_id

  • Chaîne qui indique l'ID du développeur pour le app_registry indiqué.
  • Si le développeur est également enregistré auprès d'un magasin ou d'un autre registre, la valeur doit correspondre à l'identité de son magasin ou de son registre.
  • Vous pouvez ajouter plusieurs fiches pour plusieurs magasins.
  • Pour les développeurs enregistrés sur Google Play, cette valeur doit être l'URL de la page du développeur (par exemple, https://play.google.com/store/apps/dev?id=5700313618786177705 est URL du développeur Google LLC).
  • Si le développeur est un développeur de SDK répertorié dans le Google Play SDK Index, utilisez l'URL Google Play SDK Index du SDK (par exemple, https://play.google.com/sdks/details/com-google-android-gms-play-services-ads correspond à l'URL Google Play SDK Index du SDK Google Mobile Ads (GMA).
  • Si le développeur est enregistré sur une autre plate-forme de téléchargement ou dans un autre registre, une plate-forme de téléchargement d'applications Une URL ou un autre identifiant peuvent être fournis.
  • Si un développeur n'est enregistré sur aucune plate-forme de téléchargement d'applications, cet attribut peut être sont omises.

Informations sur les applications

Le bundle app_info contient les paires clé/valeur suivantes :

title (obligatoire)
Chaîne indiquant le titre de l'application.
description (obligatoire)
Chaîne indiquant la fonction de l'application dans un blob de texte lisible par l'humain. en anglais.
contains_ads (obligatoire)
Valeur booléenne indiquant si des annonces sont diffusées dans l'application.

privacy_policy (obligatoire)

  • Chaîne qui contient un attribut d'URL redirigeant vers les règles de confidentialité expliquant comment les données utilisateur sont traitées.
  • Obligatoire pour les applications qui transmettent des données utilisateur.
  • Si l'application ne contient pas ce lien, nous partons du principe qu'elle ne contient pas de traiter les données utilisateur.
category (obligatoire)

Chaîne qui contient l'une des catégories d'applications suivantes décrit l'objectif principal de l'application:

  • Android (uniquement pour un composant AOSP)*
  • Art et design
  • Voitures et véhicules
  • Beauté
  • Livres et références
  • Pro
  • BD
  • Communication
  • Rencontres
  • Éducation
  • Accédez à tous les divertissements
  • Événements
  • Finance
  • Alimentation et boissons
  • Jeu
  • Santé et remise en forme
  • Maison et intérieur
  • Programme d'installation (uniquement pour une plate-forme de téléchargement d'applications ou un autre installateur)*
  • Bibliothèques et démos
  • Mode de vie
  • Cartes et navigation
  • Médecine
  • Musique et audio
  • Journaux et magazines
  • Éducation des enfants
  • Personnalisation
  • Photographie
  • Productivité
  • Sécurité*
  • Shopping
  • Réseaux sociaux
  • Sport
  • Outils
  • Voyages et infos locales
  • Outil de mise à jour (uniquement pour l'application de mise à jour Over The Air (OTA) par défaut d'un appareil)*
  • Lecteurs et éditeurs vidéo
  • Météo
contact_info
Un objet PersistableBundle qui inclut les coordonnées pour le (voir ci-dessous).

Coordonnées

Le bundle contact_info contient les paires clé/valeur suivantes :

email (obligatoire)
Chaîne indiquant l'adresse e-mail de l'application.
website
Chaîne indiquant le site Web de l'application.