Remarque : Les fonctionnalités décrites sur cette page ne sont actuellement disponibles que pour certains partenaires Play.
Le service de Protection automatique de l'intégrité de Google Play vous aide à protéger vos applications et jeux contre les modifications et redistributions non autorisées portant atteinte à leur intégrité. La protection automatique de l'intégrité fonctionne dans votre application sans connexion de données. Elle peut être activée en un clic dans la Play Console et ne nécessite aucun travail de la part du développeur avant l'exécution des tests ni l'intégration du serveur backend.
Fonctionnement
La protection automatique de l'intégrité vérifie l'exécution du code de votre application afin d'en limiter la modification et la redistribution. Des techniques avancées d'obscurcissement et de protection contre la rétro-ingénierie empêchent de contourner ces vérifications. Si la vérification du programme d'installation échoue, les utilisateurs sont invités à télécharger votre application sur Google Play. Si la vérification des modifications échoue, l'application n'est pas exécutée. Cela permet de protéger les utilisateurs contre des contenus dangereux susceptibles d'apparaître dans les versions modifiées de votre application.
La protection automatique de l'intégrité est conçue dans les buts suivants :
- Éviter les modifications non autorisées : la protection automatique de l'intégrité vous aide à protéger votre application contre les modifications. Ainsi, il est plus difficile de distribuer des copies non officielles dont le comportement a été modifié (par exemple, suppression de la facturation, ajout d'annonces, modification des identifiants des propriétaires d'annonce ou ajout d'un logiciel malveillant).
- Éviter le piratage d'applications payantes : la protection automatique de l'intégrité empêche le piratage en invitant les utilisateurs qui ont obtenu votre application par le biais d'une source non officielle à acheter sa version non modifiée sur Google Play. Cette invite est facultative et peut être désactivée en décochant "Exiger l'installation depuis Google Play" sur la page de configuration de la protection automatique de l'intégrité.
- Augmenter le nombre d'utilisateurs recevant les mises à jour officielles : la protection automatique de l'intégrité peut inviter les utilisateurs à ajouter à leur bibliothèque Play la version Play non modifiée de votre application qu'ils ont téléchargée de manière indépendante. Ils sont ainsi assurés de recevoir les mises à jour en cours. Cette invite est facultative et peut être désactivée en décochant "Exiger l'installation depuis Google Play" sur la page de configuration de la protection automatique de l'intégrité.
Configurer la Protection automatique de l'intégrité
Les étapes ci-dessous décrivent la procédure à suivre pour commencer à utiliser la fonctionnalité Protection automatique de l'intégrité. Cliquez sur une section pour la développer.
Si vous activez la protection automatique de l'intégrité pour une application spécifique, Google Play ajoute automatiquement cette fonctionnalité lorsque vous créez une release prête à être distribuée sur des appareils. Pour ce faire, Google Play doit créer des APK modifiés et les signer pour votre compte. Par conséquent, vous devez :
- activer Play App Signing ;
- publier au format Android App Bundle ;
- cibler le niveau d'API 23 ou ultérieur.
Veuillez prendre connaissance des points suivants :
- La protection automatique de l'intégrité (version dynamite et supérieure) n'est compatible qu'avec Android 6.0 Marshmallow (niveau d'API 23) ou version ultérieure. Android M a été publié en 2015 et, depuis 2023, cibler un MidSDK version 23 ou ultérieure atteindra plus de 97 % des appareils Android actifs.
- La protection automatique de l'intégrité fonctionne hors connexion. Cependant, l'option "Exiger l'installation depuis Google Play" nécessite régulièrement une connexion de données si l'application Play Store sur l'appareil est restée hors connexion pendant une période prolongée.
- Si votre application utilise déjà le service de gestion des licences de Google Play, vous devez désactiver l'option "Exiger l'installation depuis Google Play".
- Lorsque vous importez votre application en vue de son partage interne, la protection n'est pas appliquée. Assurez-vous de ne communiquer les liens de partage interne d'application qu'aux membres de confiance de votre équipe et de ne pas partager les versions non protégées en externe.
- La protection de l'intégrité automatique est incompatible avec la transparence du code pour les app bundles, car elle implique des modifications du code. Les app bundles importés avec la transparence du code seront refusés si la protection automatique de l'intégrité est activée.
- Les expériences instantanées ne sont pas protégées. Pour bénéficier de la protection, vous ne devez pas activer cette fonctionnalité pour votre app bundle sur vos canaux de publication. Vous pouvez importer un app bundle avec protection sur un canal, et un autre app bundle permettant une utilisation instantanée, sans protection, sur un canal dédié.
Créez une version comme indiqué à l'étape 1 de l'article "Préparer et déployer une release".
Vous pouvez activer la protection lors de la création d'une version (comme indiqué à l'étape 2 de l'article Préparer et déployer une release) ou sur la page Intégrité de l'application (Publier > Intégrité de l'appli), qui contient des services d'intégrité et de signature qui vous aident à garantir l'expérience utilisateur que vous souhaitez pour vos applis et vos jeux.
Pendant la préparation de votre version, un bouton indiquera Obtenir la protection de l'intégrité ou Gérer la protection de l'intégrité. Vous pouvez ensuite activer la protection de l'intégrité en cliquant sur Oui, activer sous "Protection automatique de l'intégrité". Google Play signera ensuite vos versions et activera la Protection automatique de l'intégrité afin de limiter les soucis de falsification et de distribution abusive. Cela signifie que la Protection automatique de l'intégrité est activée.
Terminez la préparation de votre version et enregistrez vos modifications.
Utilisez chacun des canaux de test pour tester la version de l'application protégée et vous assurer qu'il n'y a aucun impact inattendu sur l'expérience utilisateur ni sur les performances.
Nous vous recommandons d'effectuer les actions suivantes lors de votre procédure de vérification :
- Testez le lancement de votre jeu afin d'identifier des plantages au lancement et d'éventuels ralentissements au démarrage.
- Identifiez à quels moments les appels de votre code natif (C/C++) renvoient vers Java, dans votre propre code ou dans des bibliothèques tierces (par exemple pour les annonces, la journalisation, l'intégration et l'authentification sur les réseaux sociaux, ou des fonctionnalités Android spécifiques telles que la gestion des autorisations).
Si vous rencontrez des problèmes au cours du processus de test, vous pouvez revenir à une version précédente de la Protection automatique de l'intégrité que vous avez peut-être déjà utilisée pour une précédente version. Vous avez également la possibilité de désactiver la Protection automatique de l'intégrité. Nous vous recommandons de ne pas promouvoir de versions non protégées dans les canaux de test ouverts ni dans les canaux de production.
Pour désactiver la protection de l'intégrité pour une release spécifique, procédez comme suit :
- Lorsque vous préparez votre version, cliquez sur Gérer la protection de l'intégrité.
- Sous "Protection automatique de l'intégrité", sélectionnez Protection précédente ou Désactiver la protection pour cette release.
- Enregistrez les modifications. Les modifications seront appliquées à cette version. La prochaine fois que vous importerez une version, elle bénéficiera à nouveau de la protection la plus récente et la plus performante.
Lorsque vous êtes prêt, vous pouvez déployer votre release dans un canal de production sur la Play Console afin que votre application protégée devienne accessible à tous les utilisateurs de Google Play dans les pays de votre choix.
Pratiques recommandées
Ne pas publier de versions d'application non protégées
Si vous publiez des versions non protégées dans des canaux de test ouverts ou via d'autres canaux en dehors de Google Play, la protection de votre application ne fonctionnera plus. Pour préserver la protection de l'intégrité de votre application, nous vous recommandons de ne publier que des versions protégées de votre application dans les canaux de test ouverts et les canaux de production.
Être vigilant lorsque vous associez plusieurs solutions de protection contre la falsification
La protection automatique de l'intégrité est susceptible de ne pas être compatible avec d'autres solutions de protection contre la falsification de l'environnement d'exécution. Leur utilisation simultanée pourrait entraîner des problèmes pour les utilisateurs. Si vous avez déjà intégré le service d'attribution de licence Play à votre application, nous vous recommandons de désactiver l'option "Exiger l'installation depuis Google Play". Si votre application effectue d'autres vérifications d'exécution, veillez à tester soigneusement l'application protégée pour détecter d'éventuels problèmes avant de la publier sur les canaux de tests ouverts.
Tester votre application protégée
Google Play fournit automatiquement des versions protégées dans tous les canaux : tests internes, fermés et ouverts, et canaux de production. Veillez à tester en détail ces versions comme vous le faites d'habitude.
Si vous importez la version de votre application directement en vue de son partage interne, Google Play n'ajoute aucune protection, afin que vous puissiez utiliser le partage interne d'application pour importer des versions de débogage et d'autres versions similaires.
Lorsque vous accédez au lien de partage interne d'une version d'application protégée dans l'explorateur d'app bundle, la version partagée est identique à celle qui a été traitée par Google Play. Si cette version de l'application a été importée dans un canal de test et protégée, le lien de partage interne de l'application disponible dans l'explorateur d'app bundle fournit une version protégée. Vous pouvez consulter l'état de protection dans l'onglet Détails de l'explorateur d'app bundle.
Surveiller les plantages
Vous pouvez constater une augmentation des plantages une fois votre application protégée. Cela indique probablement que la protection automatique de l'intégrité fonctionne comme prévu. Si un pirate informatique tente de modifier en vain votre application, la vérification de l'exécution empêche votre application de fonctionner, en la faisant planter dans la plupart des cas.
Les plantages qui ne sont pas attribués à Google Play n'ont pas d'incidence sur vos statistiques de stabilité Android Vitals. Si vous utilisez d'autres outils pour analyser vos plantages (comme Crashlytics) et que vous avez besoin d'un nom de package pour filtrer par source d'installation, utilisez "com.android.vending" pour le Google Play Store.
Si vous pensez que le nombre de plantages augmente de manière indésirable, veuillez nous le signaler en fournissant le plus d'informations possible. Notre équipe se chargera d'examiner le problème. Nous vous répondrons si nous déterminons que les plantages sont liés à la protection.
Signaler les versions craquées de votre application
Une version craquée est une version de votre application qui continue de fonctionner lorsqu'elle a été modifiée, ou lorsqu'elle a été installée en dehors de Google Play (si vous exigez l'installation depuis Google Play).
Si vous avez identifié une version craquée de votre application, veuillez nous le signaler.
Contenu associé
- Regardez cette vidéo sur la protection automatique de l'intégrité.
- En savoir plus sur les services d'intégrité et de signature dans la Play Console
- En savoir plus sur les services d'intégrité et de signature sur le site des développeurs Android