J'utilise les plug-ins Eclipse Android pour construire un projet, mais cette erreur s'affiche dans la fenêtre de la console:
[2010-02-03 10:31:14 - androidVNC]Error generating final archive:
Debug certificate expired on 1/30/10 2:35 PM!
Comment je le répare?
Supprimez votre certificat de débogage sous ~/.Android/debug.keystore
sur Linux et Mac OS X; le répertoire est quelque chose comme %USERPROFILE%/.Android
on Windows.
Le plug-in Eclipse devrait alors générer un nouveau certificat lors de la prochaine tentative de création d'un package de débogage. Vous devrez peut-être nettoyer puis créer pour générer le certificat.
Lors de l’installation, le SDK Android génère un certificat de signature debug
dans un magasin de clés appelé debug.keystore
. Le plug-in Eclipse utilise ce certificat pour signer chaque version d'application générée.
Malheureusement, un certificat de débogage n'est valide que pendant 365 jours. Pour en générer un nouveau, vous devez supprimer le fichier debug.keystore
existant. Son emplacement dépend de la plate-forme. Vous pouvez le trouver dans Préférences - Android - Construire - Fichier de clés de débogage par défaut.
Il est très pénible de devoir supprimer tous vos fichiers .apk de développement, car le nouveau certificat ne correspond pas et vous ne pouvez donc pas les mettre à niveau dans tous vos AVD. Vous devez également obtenir une autre clé de développement MAP-API. Il y a une autre solution.
Vous pouvez créer votre propre certificat de débogage dans debug.keystore
avec l'expiration souhaitée. Faites cela dans le dossier .Android
sous votre répertoire HOME
:
keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -storepass Android -keypass Android -keyalg RSA -validity 14000
keytool.exe
se trouve dans le dossier JDK bin (par exemple C:\Program Files\Java\jdk1.6.0_31\bin\
sous Windows).
ADT définit le nom et le prénom du certificat sur "Android Debug", l'unité organisationnelle sur "Android" et le code de pays à deux lettres sur "US". Vous pouvez laisser les valeurs d'organisation, de ville et d'état sous la forme "Inconnu". Cet exemple utilise une validité de 14 000 jours. Vous pouvez utiliser la valeur de votre choix.
Sur Vista, cela a fonctionné:
DOS: del c:\user\dad\.Android\debug.keystore
Eclipse: Dans Projet, Nettoyez le projet. Fermez Eclipse. Rouvrez Eclipse.
Eclipse: démarrez l'émulateur. Supprimez l'application de l'émulateur.
Tu es prêt.
J'étais assez inquiète lorsque j'ai dit cette erreur, mais je l'ai corrigée en lisant ici et en jouant pendant 10 minutes.
Supprimer: debug.keystore situé dans C:\Documents and Settings\\[user]\.Android
, Nettoyez et construisez votre projet.
C:\Users\[username]\.Android
et supprimez le fichier debug.keystore.Nettoyez et construisez votre projet.
Supprimez votre magasin de clés situé dans ~/.Android/debug.keystore
Nettoyez et générez votre projet.
Dans toutes les options, si vous ne pouvez pas obtenir le nouveau debug.keystore, redémarrez Eclipse.
Sous Windows 7, c'est sur le chemin
C:\Users\[username]\.Android
debug.keystore
Si un certificat expire au milieu du débogage du projet, vous devez effectuer une désinstallation manuelle:
Veuillez exécuter adb uninstall <package_name>
dans un shell.
Sur un Mac, ouvrez la console (le répertoire de l'utilisateur actuel doit être ouvert), cd ".Android" ("ls" pour valider le fichier debug.keystore). Enfin, "rm debug.keystore" pour supprimer le fichier.
Le SDK Android génère un certificat de signature de "débogage" dans un magasin de clés appelé debug.keystore
. Le plug-in Eclipse utilise ce certificat pour signer chaque génération d'application générée.
Malheureusement, un certificat de débogage n'est valide que pendant 365 jours. Pour en générer un nouveau, vous devez supprimer le fichier debug.keystore
existant. Son emplacement dépend de la plate-forme. Vous pouvez le trouver dans Préférences -> Android -> Construire -> * Le magasin de clés de débogage par défaut.
DOS: del c:\user\dad.Android\debug.keystore
Eclipse: Dans Projet, Nettoyez le projet. Fermez Eclipse. Rouvrez Eclipse.
Eclipse: démarrez l'émulateur. Supprimez l'application de l'émulateur.
Supprimez manuellement debug.keystore
du dossier .Android
.
Vous pouvez trouver le dossier .Android
comme ceci: home/username/.Android
Remarque: le fichier .Android
par défaut sera masqué.
Alors cliquez sur le menu des lieux. Sous select home folder. Cliquez sur Afficher, puis sur Afficher les fichiers cachés. Le dossier .Android
sera visible.
Supprimez debug.keystore
du .Android folder
.
Puis nettoyez votre projet. Maintenant, Android générera un nouveau fichier .Android folder
.
J'ai eu ce problème il y a quelques semaines. J'ai d'abord essayé le dépannage sur le site du développeur Android, mais sans succès. Après cela, j'ai réinstallé le SDK Android, qui a résolu mon problème.
H-m-m-m. Il est intéressant de voir combien de personnes ont eu des expériences légèrement différentes avec cela. Je me souviens du temps où cela était considéré comme un signe que le logiciel n'était pas prêt pour la publication, et l'équipe le réparerait AVANT que les utilisateurs ne commencent à voir ces problèmes :(
Ma propre expérience était juste un peu différente. J'avais déjà essayé Project> Clean, mais j'ai toujours le même échec de construction. Ensuite, j'ai supprimé le debug.keystore (sous .Android) exactement comme le disait la première réponse. Toujours le même problème. Ensuite, j'ai nettoyé à nouveau et merveille, ça a fonctionné!
Maintenant, ne vous méprenez pas, je suis heureux de l'avoir fait fonctionner grâce aux astuces de ce fil. Mais clairement, nettoyer ne fonctionne pas correctement, et comment a-t-il trouvé une clé expirée après la suppression du magasin de clés ??? Il est clair que quelque chose ne va pas avec Eclipse ou l’ADT - je ne sais pas trop lequel.
Sur Ubuntu, cela a fonctionné:
Je suis allé à home/username/.Android
et j'ai renommé keystore.debug
en keystoreold.debug
. J'ai ensuite fermé Eclipse, démarré Eclipse et SDK a créé le nouveau certificat keystore.debug
dans ce dossier.
Vous devez ensuite désinstaller/réinstaller les applications que vous avez installées via le débogage USB ou un fichier APK non signé (APK "non signé" = signé avec un certificat de débogage).
Pour Windows XP, accédez à C:\Documents and Settings\%userprofile%\.Android
et supprimez le fichier debug.keystore , redémarrez Eclipse et votre projet est maintenant généré sans erreur.
Exemple de chemin:
C:\Documents and Settings\raja.ap\.Android\
Dans Windows debug.keystore
, le fichier est localtes dans le dossier C:\Users\%Username%\.Android
. Ce fichier est créé lors de l’installation de votre SDK Android et n’est valable que pendant un an. Après cette période, vous obtiendrez cette erreur Error getting final archive: Debug certificate expired on xx/xx/xxxx
.
Pour supprimer cette erreur, supprimez simplement le fichier et exécutez à nouveau le programme. Dans mon Eclipse, j’ai activé Project->Build Automatically
pour que cela fonctionne directement, mais si vous l’avez désactivé, vous devez nettoyer le projet Project->Clean
.. sélectionnez votre projet et appuyez sur ok. Ensuite, vous devrez le construire manuellement. 3ème clic sur votre projet et sélectionnez Build project
. (Remarque - Vous ne verrez cette option que si vous avez désactivé la fonction Construire automatiquement dans votre menu Projets).
fermez d'abord l'Eclipse ensuite
Ouvrir CMD par fenêtre touche + R ou via exécuter en tant qu'administrateur
Suit l'étape suivante
del "%USERPROFILE%\.Android\debug.keystore"
keytool -genkey -v -keystore "%USERPROFILE%\.Android\debug.keystore" -alias androiddebugkey -storepass Android -keypass Android -keyalg RSA -validity 30000
après cela, redémarrez Eclipse.
Une fois que vous avez installé _Android SDK in Eclipse
_, il génère un certificat de signature de débogage dans un magasin de clés appelé debug.keystore . Le plug-in Eclipse utilise ce certificat pour signer chaque version d'application générée.
Maintenant, le problème avec ce certificat de débogage est qu’il n’est valide que pour un an, ou 365 jours. _If your Eclipse IDE uses an expired debug certificate, you will not be able to create and/or deploy an Android app
_.
Pour résoudre ce problème, il vous suffit de supprimer le fichier debug.keystore .
Go to Preferences
Android
Build
Default debug keystore
Là, vous devriez voir le dossier où se trouve le fichier. Supprimez simplement ce fichier et vous êtes prêt à partir.
Pour plus d'informations. vous pouvez visiter
http://developer.Android.com/tools/publishing/app-signing.html
Pour résoudre ce problème, supprimez simplement le fichier debug.keystore.
L'emplacement de stockage par défaut pour les AVD est
Dans ~/.Android/sur OS X et Linux.
Dans C:\Documents and Settings\.Android\sous Windows XP
Dans C:\Utilisateurs\.Android\sous Windows Vista et Windows 7.
Voir aussi ce lien, qui peut être utile.
http://developer.Android.com/tools/publishing/app-signing.html