Как мне создать сертификат для моего Android Market APK? - PullRequest
33 голосов
/ 21 октября 2010

Я хочу загрузить свое первое APK / приложение в Android Market, но я получил эту ошибку (кстати, она не привела меня к правильной ссылке при поиске в stackoverflow).

Маркет не принимает apks, подписанные сертификатом отладки. Создайте новый сертификат сроком действия не менее 50 лет. Маркет требует, чтобы сертификат, используемый для подписания apk, был действителен как минимум до 22 октября 2033 года. Создайте новый сертификат.

Хотя оказывается, этот вопрос похож, парень просто говорит: "О, ты напомнил мне, как это сделать", не объясняя на самом деле. Я посмотрел на веб-сайт, указанный в «ответе», но вот моя проблема:

  • Я не знаю, где находится мой инструмент keytool. Android-сайт довольно расплывчатый; Я не вижу "keytool" в моем каталоге .. \ android-sdk-windows \ tools.
  • Я думаю, что делал это раньше, но мне хотелось бы, чтобы у меня был набор шагов, таких как «Откройте командную строку, перейдите в каталог, где находится keytool, введите команду« xyz -flagsforxyz », а затем укажите на хранилище ключей из опции 'export release apk' в Eclipse "... или что-то подобное.

Надеюсь, вы можете сказать, что я уже попробовал несколько вещей! Возможно, я просто упускаю что-то простое, так что пришло время записывать шаги в stackoverflow! Спасибо за вашу помощь.

Ответы [ 2 ]

77 голосов
/ 21 октября 2010

Если вы используете Eclipse for Development, просто щелкните правой кнопкой мыши по вашему проекту и выберите экспорт. Теперь выберите Android, а затем экспортируйте приложение Android. На следующем шаге подтвердите проект, который вы хотите экспортировать. Затем нажмите «Далее», и теперь вы сможете выбрать создание нового хранилища ключей. Теперь заполните обязательные поля, и вы сможете подписать свое приложение. Обязательно сделайте резервную копию файла хранилища ключей и запомните свой пароль. Потеря этого сделает невозможным обновление вашего приложения.

Если вы используете терминал для создания хранилища ключей и у вас установлен Java SDK, в / usr / bin должна быть программа под названием keytool (в системе на основе Unix). В Windows SDK также должен поставляться с keytool, но место установки может отличаться. Найдите keytool.exe на вашем компьютере, если keytool уже не находится на вашем пути. С помощью этого инструмента вы сможете создать ключ следующим образом:

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

Помните, что как только вы потеряете свой Сертификат или срок его действия истечет, вы не сможете подписать свою заявку. Убедитесь, что срок годности в будущем очень большой.

4 голосов
/ 31 октября 2013

Да, Януш очень хорошо это объяснил, но я хотел бы рассказать еще несколько шагов, прежде чем выпустить приложение на рынок. поэтому первый шаг - подписать приложение, используя jarsigner

jarsigner -verbose -keystore pkg_name apk_file_name key_name

и второй шаг - использовать zipalign, чтобы убедиться, что вы не теряете места.

zipalign -v 4 apk_file_name zipped_apk_file_name(newfile)

это, безусловно, поможет вам запустить приложение.

...