web-dev-qa-db-fra.com

Android Studio - Le magasin de clés a été falsifié ou le mot de passe était incorrect

J'essaie de générer un fichier APK signé à l'aide du widget intégré à Android Studio v1.4.

Cependant, j'ai eu cette erreur ennuyeuse 

Erreur: L'exécution a échoué pour la tâche ': app: packageRelease' . Échec de lecture de la clé cckey du magasin "C:\Users\Lancelot\Desktop\release.jks": le magasin de clés a été falsifié ou le mot de passe a été incorrect.

J'ai pu récupérer mon alias de clé comme dans la capture d'écran ci-dessous  enter image description here

(Pour arriver ici, le mot de passe du magasin de clés doit être correct; sinon, l'erreur sera affichée.)

Ensuite, j’ai tapé mon mot de passe de clé mais j’ai pas eu de chance en signant le fichier APK ... J'ai même essayé de changer le mot de passe de clé en utilisant la ligne de commande keytool -keypasswd -alias cckey -keystore C:\Users\Lancelot\Desktop\release.jks. En exécutant cela, je dois entrer l'ancien mot de passe correctement avant d'entrer le nouveau mot de passe, qui a tous été traversé; cela prouve que le mot de passe clé n'était pas faux au départ.

La question est donc, si mon mot de passe de magasin de clés, mon alias de clé et mon mot de passe sont tous corrects, quel est le problème alors?

14
Lancelot

Apparemment, je viens de trouver un autre post posté il y a quelques mois qui a résolu mes problèmes et je me suis battu pendant des jours ...

Il suffit simplement de changer le mot de passe du magasin de clés et du pseudonyme pour qu'il soit identique pour que cela fonctionne. Bien que je ne sache toujours pas pourquoi le même magasin de clés fonctionnait auparavant lorsque je publiais des mises à jour; puis ne fonctionne plus jusqu'à ce que j'ai changé les mots de passe. 

Si quelqu'un a une réponse à cela, veuillez le faire savoir à tout le monde!

11
Lancelot

Je viens d'avoir le même problème et je suis à 100% sûr de mon mot de passe. J'ai trouvé la solution directement en ajoutant -storepass dans la ligne de commande. L'utilisation de cette commande a fait l'affaire:

keytool -list -v -keystore C:\....\keystore.jks -storepass HereMyPassword -alias HereMyAlias
6
JPhi Denis

Apparemment, Google a décidé de définir le mot de passe du magasin de clés par défaut sur Android.

L'utilitaire keytool vous invite à entrer un mot de passe pour le magasin de clés. Le mot de passe par défaut du magasin de clés de débogage est Android. L'outil de clé imprime ensuite l'empreinte digitale sur le terminal.

Voir https://developers.google.com/Android/guides/client-auth

5
TechCrystal

comment j'ai résolu le même problème avec Android studio 2.2.3

Android studio >> Fichier> Structure du projet

trouvez votre projet sous les modules à gauche, sélectionnez-le et cliquez sur l'onglet Signature. vous pouvez ensuite créer une nouvelle configuration en cliquant sur l'icône plus verte et entrer toutes les informations d'identification sur la signature avec la clé de magasin de clés existante. (assurez-vous que votre "clé elias", votre "mot de passe clé" et votre "mot de passe utilisateur" doivent être identiques à ceux utilisés précédemment avec

puis allez dans l’onglet saveurs et sélectionnez le fichier de configuration créé comme Signing config.

encore une fois, accédez à l'onglet Types de construction et sélectionnez le fichier de configuration créé en tant que Signature de configuration.

et ok pour finir la tâche

bonne codage :)

4
Dinithe Pieris

Assurez-vous qu'il n'y a pas d'espaces après les définitions de vos constantes:

MYAPP_RELEASE_STORE_FILE=mykeystore.keystore
MYAPP_RELEASE_KEY_ALIAS=keyalias
MYAPP_RELEASE_STORE_PASSWORD=pass
MYAPP_RELEASE_KEY_PASSWORD=pass
3
Jk33

J'ai eu un problème similaire lors de la mise à jour de mon application. L'outil de clé n'a pas lu le fichier de magasin de clés correct, mais plutôt un fichier de magasin de clés plus ancien que j'ai créé il y a des mois et que je n'ai pas utilisé. Vous avez cherché des solutions en ligne, mais vous n’en avez pas trouvé. J'ai presque abandonné mais j'ai pensé nettoyer le projet en cliquant sur Build then Clean Project . Ce dernier recours a fonctionné pour moi.

3
Arnulfo B. Bataller

Mon problème était que j'avais défini le mot de passe du magasin dans la variable keyPassword et le mot de passe de la clé dans la variable storePassword.

0
pableiros

Pour mon cas (avec Android Studio), j'ai trouvé que le fichier Keystore ne peut pas être supprimé et il semble verrouillé par OpenJDK. Je soupçonne qu'il devrait y avoir quelque chose qui cloche entre OpenJDK et le pare-feu de Windows10. Je ferme le pare-feu temporairement. Et il fonctionne.

0
user11087513

Dans mon cas, j'ai oublié de changer la cible de génération du test espresso en application: 

0
Slava Glushenkov