Signature D'un APK avec une clé de téléchargement fournie par Google Play

j'essaie de comprendre comment télécharger une application sur Google Play tout en utilisant Google Play App Signing.

Voici ce que j'ai fait:

  1. Créé une application
  2. keytool usagé.exe pour générer une clé pour l'application
  3. Téléchargé l'application sur Google Play
  4. inscrit à la signature de L'application Google Play
  5. essayez de télécharger l'application à nouveau sans succès.

il se plaint que le certificat n'est pas certificat

télécharge de nouvelles APK de la Production

échec du téléchargement Vous avez téléchargé une APK qui n'est pas signée avec le certificat de téléchargement. Vous devez utiliser le même certificat. Le certificat de téléchargement a une empreinte digitale: [SHA1: 0C:... ] et le certificat utilisé pour signer L'APK que vous avez téléchargé a les empreintes digitales: [SHA1: 2D:... ]

après quelques recherches. Je découvre comment mettre le certifié posté sur ma console Google Play dans mon fichier de clés. Quelque chose comme ceci:

keytool.exe -importcert -upload de fichier.pem -keystore myapp-release-clé.keystore

Le certificat semble être dans. Quand je lis le contenu du keystore, voici ce que j'obtiens:

keytool.exe-list-keystore trackcoachfull-release-key.fichier de clés Entrez le mot de passe de keystore:

type de magasin de clés: JKS Keystore fournisseur de: SOLEIL

votre keystore contient 2 entrées

myappfull, 18 mai 2017, PrivateKeyEntry, Empreinte digitale du certificat (SHA1): 2D:... uploadkey, 19 mai 2017, trustedCertEntry, Empreinte digitale du certificat (SHA1): 0C:...

maintenant, là où je suis bloqué...

dans Android Studio, j'essaie de générer un APK signé avec le uploadkey.

Construire > Générer Signé APK Sélectionner la clé de lecture ci-dessus Entrer le mot de passe keystore Sélectionnez l'uploadkey comme alias clé. Je suis la force pour entrer un mot de passe de clé.

erreur dans Android Studio:

erreur: L'exécution a échoué pour la tâche ':app:packageFullRelease'.

com.Android.IDE.commun.signer.KeytoolException: échec de la lecture de key uploadkey depuis le magasin "C:UsersAdminAndroidStudioProjectskeystoresmyappfull-release-key.fichier de clés": les entrées de certificat de confiance ne sont pas protégées par un mot de passe

Ma question est la suivante:

comment générer un APK signé avec une clé de téléchargement fourni par Google Play?

Merci

31
demandé sur Vadim Kotov 2017-05-19 15:29:41

2 réponses

j'ai pu signer mon APK en utilisant la clé de téléchargement fournie par Google Play. Voici les étapes que j'ai suivi pour une nouvelle application:

  1. créer un keystore et ajouter une clé de signature en utilisant Android Studio
  2. Signer l'application à l'aide de la clé créée en (1)
  3. Télécharger l'APK de Google Play
  4. Télécharger "Télécharger le certificat" à partir de Google Play de la Console
  5. ajouter le certificat téléchargé au keystore créé à l'étape (1) en utilisant la commande keytool.exe -importcert -file upload_cert.der -keystore <keystorefile>
  6. il devrait indiquer que " le certificat existe déjà dans keystore sous alias . Voulez-vous toujours de l'ajouter? [no]:"
  7. tapez "y" et appuyez sur Entrée
  8. Un message de confirmation apparaîtra
  9. Pour les versions ultérieures de signer l'application en utilisant le même processus que dans (2)

le point Important à noter ici est que dans l'étape (6), l'import keytool met à jour le certificat original avec celui téléchargé à partir de Google Play.

40
répondu Ayaz Aslam 2017-08-18 06:08:28

je pense que vous devez avoir généré votre fichier de clés comme ce à partir de votre "java\bin" dans le dossier:

keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000

lorsque vous voulez mettre à jour votre application, vous devez utiliser le même keystore que celui que vous avez généré.

  1. Construire > Générer Signé APK.

  2. sélectionnez "Choisir existant" et naviguez vers votre chemin keystore

  3. entrez "key store password"

  4. clés De l'alias, tapez sur "..." et vérifiez si votre alias clé est le même que celui que vous avez fourni lors de la génération de keystore

  5. Si oui à nouveau "Mot de passe"

  6. Appuyez sur "Suivant"

faites-moi savoir dans quelle étape vous obtenez le problème, afin que je puisse vous guider en conséquence.

2
répondu Patrick R 2017-05-20 05:33:51