Comment activer la signature de l’application Google Play

Je pense que beaucoup de développeurs essaient d’en savoir plus sur la nouvelle fonctionnalité de signature d’applications Google Play présentée à Google I / O 2017.

La possibilité de stocker le fichier de clés pour signer les applications dans Google Play vous évite de stocker le fichier de clés en toute sécurité et peut aider le système à optimiser les fichiers APK disponibles sur chaque périphérique, en fonction des caractéristiques matérielles et du système d’exploitation.

Vous pouvez en savoir plus sur ce sujet dans la documentation officielle ici: https://developer.android.com/studio/publish/app-signing.html#google-play-app-signing .

Avec la réponse suivante, je vous expliquerai un peu mieux les étapes à suivre pour télécharger votre fichier de clés original et comment créer le nouveau fichier de clés de téléchargement, que vous devrez signer à partir de ce moment.

Ce guide est destiné aux développeurs qui ont déjà une application dans le Play Store. Si vous commencez avec une nouvelle application, le processus est beaucoup plus facile et vous pouvez suivre les instructions du paragraphe “Nouvelles applications” ici

Prérequirejs que 99% des développeurs ont déjà :

  1. Studio Android

  2. JDK 8 et après l’installation, vous devez configurer une variable d’environnement dans votre espace utilisateur pour simplifier les commandes du terminal. Dans Windows x64, vous devez append ceci: C:\Program Files\Java\{JDK_VERSION}\bin à la variable d’environnement Path . (Si vous ne savez pas comment procéder, vous pouvez lire mon guide pour append un dossier à la variable d’environnement Windows 10 Path ).

Étape 0 : Ouvrez la console du développeur Google Play, puis accédez à Release Management -> App Signing .

entrer la description de l'image ici

Acceptez le TOS de signature de l’application.

entrer la description de l'image ici

Étape 1 : Téléchargez l’outil PEPK en cliquant sur le bouton identique à l’image ci-dessous

entrer la description de l'image ici

Étape 2 : Ouvrez un terminal et tapez:

java -jar PATH_TO_PEPK –keystore = PATH_TO_KEYSTORE –alias = ALIAS_YOU_USE_TO_SIGN_APK –output = PATH_TO_OUTPUT_FILE –encryptionkey = GOOGLE_ENCRYPTION_KEY

Légende:

  • PATH_TO_PEPK = Le chemin d’access au fichier pepk.jar que vous avez téléchargé à l’ étape 1 pourrait être similaire à C:\Users\YourName\Downloads\pepk.jar pour les utilisateurs Windows.
  • PATH_TO_KEYSTORE = Chemin d’access au magasin de clés que vous utilisez pour signer votre version APK. Peut être un fichier de type * .keystore ou * .jks ou sans extension. Quelque chose comme C:\Android\mykeystore ou C:\Android\mykeystore.keystore etc …
  • ALIAS_YOU_USE_TO_SIGN_APK = Le nom de l’alias que vous utilisez pour signer la version APK.
  • PATH_TO_OUTPUT_FILE = Le chemin du fichier de sortie avec l’extension .pem, quelque chose comme C:\Android\private_key.pem
  • GOOGLE_ENCRYPTION_KEY = Cette clé de chiffrement doit toujours être la même. Vous pouvez le trouver dans la page de signature de l’application, copiez-le et collez-le. Devrait être sous cette forme: eb10fe8f7c7c9df715022017b00c6471f8ba8170b13049a11e6c09ffe3056a104a3bbe4ac5a955f4ba4fe93fc8cef27558a3eb9d2a529a2092761fb833b656cd48b9de6a

Exemple:

java -jar “C: \ Users \ Nom \ Downloads \ pepk.jar” –keystore = “C: \ Android \ mykeystore” –alias = myalias –output = “C: \ Android \ private_key.pem” – clé de cryptage = eb10fe8f7c7c9df715022017b00c6471f8ba8170b13049a11e6c09ffe3056a104a3bbe4ac5a955f4ba4fe93fc8cef27558a3eb9d2a529a2092761fb833b656cd48b9de6a

Appuyez sur Entrée et vous devrez fournir dans l’ordre:

  1. Le mot de passe du magasin de clés
  2. Le mot de passe alias

Si tout s’est bien passé, vous aurez maintenant un fichier dans le dossier private_key.pem appelé private_key.pem .

Étape 3 : Téléchargez le fichier private_key.pem en cliquant sur le bouton identique à l’image ci-dessous

entrer la description de l'image ici

Étape 4 : Créez un nouveau fichier de clés à l’aide d’Android Studio.

VOUS AUREZ BESOIN DE CE KEYSTORE POUR SIGNER LES PROCHAINES DIFFUSIONS DE VOTRE APP, N’OUBLIEZ PAS LES MOTS DE PASSE

Ouvrez l’un de vos projets Android (choisissez-en un au hasard). Allez dans Build -> Generate Signed APK et appuyez sur Créer nouveau .

entrer la description de l'image ici

Maintenant, vous devez remplir les champs requirejs.

Le chemin du magasin de clés représente le nouveau fichier de clés que vous allez créer, choisissez un dossier et un nom à l’aide de l’icône à 3 points à droite, j’ai choisi C:\Android\upload_key.jks (l’extension .jks sera ajoutée automatiquement)

REMARQUE: J’ai utilisé le upload comme nouveau nom d’alias, mais si vous utilisiez précédemment le même magasin de clés avec différents alias pour signer différentes applications, vous devez choisir le même nom d’alias que vous aviez précédemment dans le fichier de clés d’origine.

entrer la description de l'image ici

Appuyez sur OK lorsque vous avez terminé, et vous aurez maintenant un nouveau upload_key.jks . Vous pouvez fermer Android Studio maintenant.

Étape 5 : Nous devons extraire le certificate de téléchargement du magasin de upload_key.jks nouvellement créé de upload_key.jks . Ouvrez un terminal et tapez:

keytool -export -rfc -keystore UPLOAD_KEYSTORE_PATH -alias UPLOAD_KEYSTORE_ALIAS -file PATH_TO_OUTPUT_FILE

Légende:

  • UPLOAD_KEYSTORE_PATH = Le chemin du magasin de clés de téléchargement que vous venez de créer. Dans ce cas était C:\Android\upload_key.jks .
  • UPLOAD_KEYSTORE_ALIAS = Le nouvel alias associé au magasin de clés de téléchargement. Dans ce cas a été upload .
  • PATH_TO_OUTPUT_FILE = Le chemin d’access au fichier de sortie avec l’extension .pem. Quelque chose comme C:\Android\upload_key_public_certificatee.pem .

Exemple:

keytool -export -rfc -keystore “C: \ Android \ upload_key.jks” -alias upload -file “C: \ Android \ upload_key_public_certificatee.pem”

Appuyez sur Entrée et vous devrez fournir le mot de passe du fichier de clés.

Maintenant, si tout s’est bien passé, vous aurez un fichier dans le dossier PATH_TO_OUTPUT_FILE appelé upload_key_public_certificatee.pem .

Étape 6 : Téléchargez le fichier upload_key_public_certificatee.pem en cliquant sur le bouton identique à l’image ci-dessous

entrer la description de l'image ici

Étape 7 : Cliquez sur le bouton ENROLL à la fin de la page de signature de l’application.

entrer la description de l'image ici

Désormais, chaque nouvelle version APK doit être signée avec le upload_key.jks et les alias créés à l’ étape 4 , avant d’être téléchargés dans la console Google Play Developer.

Davantage de ressources:

  • Documentation Google sur Google Play App Signature
  • Formulaire pour demander la réinitialisation de votre fichier de clés de téléchargement si vous le perdez

Q & A

Q: Lorsque je télécharge l’APK signé avec le nouveau magasin de données upload_key, Google Play affiche une erreur du type: Vous avez téléchargé un APK non signé. Vous devez créer un APK signé .

R: Cochez pour signer l’APK avec les deux signatures (V1 et V2) lors de la création de la version APK. Lisez ici pour plus de détails.

Lorsque vous utilisez Fabric pour les versions bêta publiques (signées avec prod config), N’UTILISEZ PAS Google Play App Signing. Vous devrez après avoir construit deux apks signés!

Lorsque vous dissortingbuez à plus de magasins de jeux (samsung, amazon, xiaomi, …) vous devrez à nouveau créer deux apks signés.

Soyez donc très prudent avec Google Play App Signing.

Il n’est pas possible de le restaurer: / et Google Play n’a pas accepté après acceptation des signatures signées avec la clé de production. Après l’activation de Google Play App Signing, seule la clé de téléchargement est acceptée …

Cela complique vraiment la dissortingbution de l’IC …

Problèmes suivants concernant la mise à niveau: https://issuetracker.google.com/issues/69285256

Je devais faire suite à:

  1. Créer une application dans la console de jeu Google entrer la description de l'image ici

2.Aller aux versions App -> Gérer la production -> Créer une version

3.Cliquez sur Continuer sur Google Play App Signing entrer la description de l'image ici

4.Créez le certificate de téléchargement en exécutant “keytool -genkey -v -keystore c: \ path \ to \ cert.keystore -alias uploadKey -keyalg RSA -keysize 2048 -validity 10000”

5.Signez votre apk avec le certificate généré (c: \ path \ to \ cert.keystore)

6.Upload signé apk dans les versions App -> Gérer la production -> Modifier la version

7.En téléchargeant apk, le certificate généré à l’étape 4 a été ajouté aux certificates de signature d’application et est devenu votre certificate de signature pour toutes les futures versions.

Procédez comme suit:

 "CREATE APPLICATION" having the same name which you want to upload before. Click create. After creation of the app now click on the "App releases" Click on the "MANAGE PRODUCTION" Click on the "CREATE RELEASE" Here you see "Google Play App Signing" dialog. Just click on the "OPT-OUT" button. It will ask you to confirm it. Just click on the "confirm" button