web-dev-qa-db-fra.com

Comment créer un certificat pour mon Android Market APK?

Je veux télécharger mon premier apk/application au Android Market, mais j'ai reçu cette erreur (ce qui ne m'a pas conduit au bon lien lorsqu'il est recherché dans Stackoverflow, en passant).

Le marché n'accepte pas les APK signés avec le certificat de débogage. Créez un nouveau certificat valide pendant au moins 50 ans. Marché exige que le certificat utilisé pour signer le apk soit valide au moins jusqu'au 22 Octobre 2033. Créer un nouveau certificat.

Bien que cela s'avère cette question est similaire, le gars dit simplement "Oh, tu me rappelais comment le faire" sans expliquer réellement. J'ai examiné le site Web mentionné dans la "réponse", mais voici mon problème:

  • Je ne sais pas où se trouve mon outil keytool. Le site Android est assez vague; Je ne vois pas "keytool" d'aucune sorte dans mon ..\windows Android-sdk-\ tools.
  • Je pense que j'ai déjà fait cela auparavant, mais j'aimerais avoir un ensemble d'étapes qui ressemblent à "ouvrir une invite de commande, accédez au répertoire où KeyTool est, entrez dans la commande" xyz -flagsforxyz ", puis pointez sur le KeyStore à partir de l'option "Export Libération APK" dans Eclipse "... ou quelque chose de similaire.

J'espère que vous pouvez dire que j'ai déjà essayé quelques choses! Je pourrais juste négliger quelque chose de simple - il est donc temps que les étapes soient enregistrées dans Stackoverflow! Merci de votre aide.

33
Danny

Si vous utilisez Eclipse pour le développement, faites un clic droit sur votre projet, puis cliquez sur Exporter. Maintenant choisir =Android puis export Android Application. Dans la prochaine étape, confirmez le projet que vous souhaitez exporter. Puis cliquez sur Suivant et maintenant, vous devriez être capable de Sélectionnez Créer un nouveau keyStore. Maintenant, remplissez les champs obligatoires et vous devez pouvoir signer votre application. Assurez-vous de faire une sauvegarde du fichier KeyStore et de vous rappeler votre mot de passe. Perdre ce sera impossible de mettre à jour votre application.

Si vous utilisez le terminal pour créer un keyStore et que vous avez Java SDK installé, il devrait y avoir un programme appelé BeyTool in/usr/bin (sur un système basé sur UNIX). Sous Windows, le SDK devrait Venez également avec le keytool mais l'emplacement d'installation peut être une recherche différente de KeyTool.exe sur votre ordinateur si KeyTool n'est pas déjà dans votre chemin. Avec cet outil, vous devriez pouvoir créer une clé de la manière suivante:

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

N'oubliez pas qu'une fois que vous perdez votre certificat ou si elle expire, vous ne pourrez pas signer votre candidature. Assurez-vous que la date d'expiration est longue de l'avenir.

77
Janusz

Oui, Janusz l'a expliqué très bien mais j'aimerais dire d'autres mesures avant de marquer une application sur le marché. Donc, la première étape consiste à signer l'application à l'aide de Jarsigner

jarsigner -verbose -keystore pkg_name apk_file_name key_name

et la deuxième étape consiste à utiliser ZipAlign pour vous assurer que vous ne perdez pas d'espace.

zipalign -v 4 apk_file_name zipped_apk_file_name(newfile)

cela vous aidera sûrement à lancer votre application.

4
akshay