web-dev-qa-db-fra.com

Comment activer la signature de Google Play App

Je pense que beaucoup de développeurs essaient d'en apprendre davantage sur la nouvelle fonctionnalité de signature d'application Google Play présentée à Google I/O 2017.

La possibilité de stocker le magasin de clés pour signer les applications dans Google Play vous évite de le stocker en toute sécurité et peut aider le système à optimiser les fichiers APK envoyés à chaque appareil, 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 vais expliquer un peu mieux les étapes que vous devez suivre pour télécharger votre magasin de clés d'origine et comment créer le nouveau magasin de clés de téléchargement, ce dont vous aurez besoin pour signer votre APK à partir de maintenant.

80
MatPag

Ce guide est destiné aux développeurs qui possèdent déjà une application sur le Play Store. Si vous démarrez avec une nouvelle application, le processus est beaucoup plus facile et vous pouvez suivre les instructions du paragraphe "Nouvelles applications" de ici

Prérequis de 99% des développeurs ayant déjà :

  1. Android Studio

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

Étape 0 : ouvrez la console de développement Google Play, puis accédez à Gestion des versions -> Signature de l'application .

enter image description here

Acceptez les conditions d'utilisation de l'application.

enter image description here

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

enter image description here

É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 = Chemin d'accès au fichier pepk.jar que vous avez téléchargé à Étape 1 , par exemple: C:\Users\YourName\Downloads\pepk.jar pour les utilisateurs Windows.
  • PATH_TO_KEYSTORE = Chemin du 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 cryptage doit toujours être la même. Vous pouvez le trouver dans la page de signature des applications, le copier et le coller. Devrait être sous cette forme: eb10fe8f7c7c9df715022017b00c6471f8ba8170b13049a11e6c09ffe3056a104a3bbe4ac5a955f4ba4fe93fc8cef27558a3eb9d2a529a2092761fb833b656cd48b9de6a

Exemple:

Java -jar "C:\Utilisateurs\VotreNom\Téléchargements\pepk.jar" --keystore = "C:\Android\mykeystore" --alias = myalias --output = "C:\Android\private_key.pem" - clé de cryptage = eb10fe8f7c7c9cfc

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

  1. Le mot de passe du keystore
  2. Le mot de passe alias

Si tout va bien, vous aurez maintenant un fichier dans le dossier PATH_TO_OUTPUT_FILE appelé private_key.pem.

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

enter image description here

Étape 4 : créez un nouveau fichier de clés à l'aide de Android Studio.

VOUS AUREZ BESOIN DE CE KEYSTORE DANS LE FUTUR POUR SIGNER LES PROCHAINS COMMUNICATIONS DE VOTRE APP, N'OUBLIEZ PAS LES MOTS DE PASSE

Ouvrez l’un de vos Android projets (choisissez-en un au hasard). Allez à Construire -> Générez l'APK signé et appuyez sur Créer nouveau .

enter image description here

Vous devez maintenant remplir les champs obligatoires.

Le chemin d'accès au magasin de clés représente le nouveau magasin 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é 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 celui que vous aviez précédemment dans le magasin de clés d'origine.

enter image description here

Appuyez sur OK lorsque vous avez terminé et vous obtiendrez maintenant un nouveau magasin de clés upload_key.jks. Vous pouvez fermer Android Studio maintenant.

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

keytool -export -rfc -keystore UPLOAD_KEYSTORE_PATH -alias UPLOAD_KEYSTORE_ALIAS -fichier 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, il s'agissait de C:\Android\upload_key.jks.
  • UPLOAD_KEYSTORE_ALIAS = Nouvel alias associé au fichier de clés de téléchargement. Dans ce cas était upload.
  • PATH_TO_OUTPUT_FILE = Le chemin du fichier de sortie avec l'extension .pem. Quelque chose comme C:\Android\upload_key_public_certificate.pem.

Exemple:

keytool -export -rfc -keystore "C:\Android\upload_key.jks" -alias upload -file "C:\Android\upload_key_key_public_certificate.pem"

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

Maintenant, si tout va bien, vous aurez un fichier dans le dossier PATH_TO_OUTPUT_FILE appelé upload_key_public_certificate.pem.

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

enter image description here

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

enter image description here

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

Davantage de ressources:

Q & A

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

R: Cochez pour signer le fichier APK avec les deux signatures (V1 et V2) lors de la création du fichier APK de version. Lire ici pour plus de détails.

MIS À JOUR

L'étape 4,5,6 consiste à créer une clé de téléchargement facultative pour les applications existantes.

"Clé de téléchargement (facultatif pour les applications existantes): nouvelle clé générée lors de votre inscription au programme. Vous utiliserez la clé de téléchargement pour signer tous les fichiers APK futurs avant de les télécharger sur la Play Console." https://support.google.com/googleplay/Android-developer/answer/7384423)

157
MatPag

Il existe une solution beaucoup plus simple qui prendra une minute.

  1. Dans la console Google Play, sélectionnez Gestion des versions -> Signature de l'application
  2. Choisissez la première option, celle avec Générer une clé privée cryptée avec Android Studio (ou quelque chose du genre; je ne peux plus revenir en arrière pour voir cette page).
  3. Dans Android Studio, générez votre Android App Bundle (fichier .aap) à partir de Générez -> Générer un ensemble signé/APK ... , choisissez l'option Android App Bundle et ne ' t oubliez pas de cocher Exporter la clé cryptée (nécessaire pour inscrire votre application de signature de l'application Google Play) . Si vous n'avez pas généré de magasin de clés, générez un ad-hoc.
  4. Maintenant la partie "difficile". Une fois le fichier .aap généré, Android Studio affiche une notification dans le coin inférieur droit contenant un chemin d'accès à l'emplacement où le fichier .aap est enregistré. Dans la même notification, si vous développez celle-ci, vous trouverez un autre lien vers le chemin où la clé privée a été enregistrée (appelé private_key.pepk ). Si vous manquez cette notification, ne vous inquiétez pas, ouvrez simplement la fenêtre Journal des événements en cliquant sur la ( Journal des événements en bas à droite et vous trouverez les mêmes informations. Ouvrez cet emplacement.Pour moi, c:\Utilisateurs\votre utilisateur\.Android

enter image description here

  1. Retournez dans le navigateur et appuyez sur la touche APP SIGNING PRIVATE KEY et naviguez jusqu'à l'emplacement de la clé privée sur votre ordinateur.

Terminé!

Vous pouvez maintenant télécharger votre version que vous avez générée plus tôt :) Bonne chance!

20
Marius Tanasoiu

Lorsque vous utilisez Fabric pour les versions bêta publiques (signé avec prod config), NE PAS UTILISER Signature de l'application Google Play. Vous devrez après construire deux apks signés!

Lorsque vous distribuez dans plusieurs magasins de jeux (samsung, Amazon, xiaomi, ...), vous devez à nouveau créer deux apks signés.

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

Il n'est pas possible de l'inverser:/ et Google Play ne l'a pas accepté après avoir signé un APK signé avec une clé de production. Après l'activation de Google Play App, seule la clé de téléchargement est acceptée ...

Cela complique vraiment la distribution de CI ...

Prochains problèmes avec la mise à niveau: https://issuetracker.google.com/issues/69285256

4
mtrakal

Je devais faire ce qui suit:

  1. Créer une application dans la console de jeu Google enter image description here

2.Allez sur Versions de l'application -> Gérer la production -> Créer une version

3.Cliquez sur Continuer dans la signature de l'application Google Play enter image description here

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

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

6.Upload signé apk dans Versions de l'application -> Gérer la production -> Modifier la sortie

7.En téléchargeant apk, le certificat généré à l'étape 4 a été ajouté à certificats de signature d'applications et est devenu votre certificat de signature pour toutes les versions futures.

3
itfake
I face this issue when i am trying to migrate Apk to Android App Bundle means publishing .aab instand of .apk file..

while building .aab file its will ask the location to store key export path.
as below 

enter image description here
enter image description here Dans la deuxième image, vous trouvez le chemin d’exportation de la clé cryptée. Emplacement où notre fichier .pepk sera stocké dans le dossier spécifique lors de la génération du fichier .aab.

In Google Play Console once you login with Play Store credential
select your project from left side choose App Signing option Release Management>>App Signing

enter image description here

vous trouverez la fenêtre ACCEPT Certification (Certification) de Google App Signing.

Après cela, vous trouverez trois boutons radio sélectionnez **

Importer une clé exportée de Android Bouton d'option Studio

**, il va vous développer bouton APP SIGNING PRIVATE KEY comme ci-dessous

enter image description here

click on the button and choose the .pepk file (We Stored while generating .aab file as above)

Read the all other option and submit.

Une fois avec succès, vous pouvez revenir à la version de l'application, parcourir le fichier .aab et terminer RollOut ...

@Ambilpura

2

Faites ce qui 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
1
Sterling Diaz