Я использую плагины Eclipse Android для создания проекта, но я получаю эту ошибку в окне консоли:
[2010-02-03 10:31:14 - androidVNC]Error generating final archive:
Debug certificate expired on 1/30/10 2:35 PM!
Как мне это исправить?
Я использую плагины Eclipse Android для создания проекта, но я получаю эту ошибку в окне консоли:
[2010-02-03 10:31:14 - androidVNC]Error generating final archive:
Debug certificate expired on 1/30/10 2:35 PM!
Как мне это исправить?
Ответы:
Удалите свой сертификат отладки ~/.android/debug.keystore
в Linux и Mac OS X ; каталог похож %USERPROFILE%/.android
на Windows .
Плагин Eclipse должен генерировать новый сертификат при следующей попытке создать пакет отладки. Вам может потребоваться очистить, а затем собрать для создания сертификата.
После установки Android SDK создает debug
сертификат подписи для вас в хранилище ключей с именем debug.keystore
. Плагин Eclipse использует этот сертификат для подписи каждой создаваемой сборки приложения.
К сожалению, сертификат отладки действителен только в течение 365 дней. Для создания нового необходимо удалить существующий debug.keystore
файл. Его расположение зависит от платформы - вы можете найти его в Предпочтения - Android - Сборка - Склад ключей отладки по умолчанию .
Трудно удалить все ваши файлы .apk разработки, потому что новый сертификат не совпадает, поэтому вы не можете обновить их во всех ваших AVD. Вы также должны получить еще один ключ MAP-API для разработки. Есть другое решение.
Вы можете создать свой собственный сертификат отладки debug.keystore
с любым сроком действия. Сделайте это в .android
папке под вашим HOME
каталогом:
keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android -keyalg RSA -validity 14000
keytool.exe
можно найти в папке bin JDK (например, C:\Program Files\Java\jdk1.6.0_31\bin\
в Windows).
ADT устанавливает имя и фамилию в сертификате как «Отладка Android», организационную единицу - как «Android», а двухбуквенный код страны - как «США». Вы можете оставить значения организации, города и штата как «Неизвестно». В этом примере используется срок действия 14000 дней. Вы можете использовать любое значение, которое вам нравится.
На Vista это сработало:
DOS: del c:\user\dad\.android\debug.keystore
ЗАТМЕНИЕ: В Проекте, Очистить проект. Закрыть Затмение. Снова откройте Eclipse.
ЗАТМЕНИЕ: Запустите эмулятор. Удалить приложение из эмулятора.
Тебе хорошо идти.
Я очень переживал, когда говорю об этой ошибке, но я исправил ее из-за того, что я читал здесь и играл в течение 10 минут.
Удалить: debug.keystore
находится в
C:\Documents and Settings\\[user]\.android
, Очистить и построить свой проект.
C:\Users\[username]\.android
и удалите файл debug.keystore.Очистите и постройте свой проект.
Удалите хранилище ключей, расположенное в ~/.android/debug.keystore
Чистой, и постройте свой проект.
Во всех опциях, если вы не можете получить новый debug.keystore, просто перезапустите eclipse.
На Mac откройте Терминал (должен открыться каталог текущего пользователя), cd ".android" (здесь есть "ls" для проверки debug.keystore). Наконец, «rm debug.keystore», чтобы удалить файл.
Android SDK генерирует «отладочный» сертификат подписи для вас в хранилище ключей с именем debug.keystore
. Плагин Eclipse использует этот сертификат для подписи каждой создаваемой сборки приложения.
К сожалению, сертификат отладки действителен только в течение 365 дней. Чтобы создать новый, вы должны удалить существующий debug.keystore
файл. Его расположение зависит от платформы - вы можете найти его в « Настройки» -> « Android» -> « Сборка» -> * хранилище ключей отладки по умолчанию.
DOS: del c: \ user \ dad.android \ debug.keystore
Затмение: в проекте, очистить проект. Закрыть Затмение. Снова откройте Eclipse.
Затмение: Запустите Эмулятор. Удалить приложение из эмулятора.
Удалите вручную debug.keystore
из .android
папки.
Вы можете найти .android
папку следующим образом:home/username/.android
Примечание: .android
файл по умолчанию будет скрыт.
Так что нажмите на меню мест. Под выберите домашнюю папку. Под кликом на представлении, под кликом показать скрытые файлы и тогда .android
папка будет видна.
Удалить debug.keystore
из .android folder
.
Тогда почистите свой проект. Теперь Android сгенерирует новый .android folder
файл.
У меня была эта проблема пару недель назад. Сначала я попробовал устранить неполадки на сайте разработчиков Android, но без удачи. После этого я переустановил Android SDK, что решило мою проблему.
Хммм. Интересно, как много людей имели немного другой опыт с этим. Я помню дни, когда это считалось признаком того, что программное обеспечение не было готово к выпуску, и команда фактически исправляла его ДО того, как пользователи начали видеть эти проблемы :(
Мой собственный опыт был немного другим. Я уже пробовал Project> Clean, но все равно получил тот же сбой сборки. Затем я удалил debug.keystore (под .android), как и сказал первый ответ. Все еще есть та же проблема. Потом я снова сделал чистку, и чудо из чудес, это сработало!
Теперь не поймите меня неправильно, я рад, что все получилось благодаря подсказкам в этой теме. Но ясно, что очистка не работает правильно, и как он нашел истекший ключ после того, как я удалил хранилище ключей ??? Очевидно, что-то не так с Eclipse или ADT - не уверен, что именно.
На Ubuntu это сработало:
Я пошел home/username/.android
и я переименовал keystore.debug
в keystoreold.debug
. Затем я закрыл Eclipse, запустил Eclipse, и SDK создал новый сертификат keystore.debug
в этой папке.
Затем вам нужно удалить / переустановить приложения, которые вы установили с помощью отладки USB или неподписанного APK («unsigned» APK = подписан с помощью сертификата отладки).
Для Windows XP перейдите C:\Documents and Settings\%userprofile%\.android
и удалите файл debug.keystore , перезапустите eclipse, и теперь ваш проект будет собран без ошибок.
Пример пути:
C:\Documents and Settings\raja.ap\.android\
В Windows debug.keystore
файл находится в C:\Users\%Username%\.android
папке. Этот файл создается при установке Android SDK и действует только в течение года. После этого perod вы начнете получать эту ошибку Error getting final archive: Debug certificate expired on xx/xx/xxxx
.
Чтобы удалить эту ошибку, просто удалите файл и снова запустите программу. В моем Eclipse я включил, Project->Build Automatically
чтобы он работал напрямую, но в случае, если вы отключили его, вам нужно будет очистить проект Project->Clean
.. выберите ваш проект и нажмите ОК. Тогда вам нужно будет построить его вручную. 3-й щелкни по своему проекту и выбери Build project
. (Примечание. Эта опция появится только в том случае, если в меню «Проекты» есть функция «Автоматически строить»).
Сначала закройте затмение, затем
Откройте CMD с помощью Window Key + R или через Run as Admin
Следует за следующим шагом
del "%USERPROFILE%\.android\debug.keystore"
keytool -genkey -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android -keyalg RSA -validity 30000
после этого перезапустите затмение.
После установки Android SDK in Eclipse
он создает сертификат подписи отладки для вас в хранилище ключей с именем debug.keystore . Плагин Eclipse использует этот сертификат для подписи каждой создаваемой сборки приложения.
Теперь проблема с этим отладочным сертификатом состоит в том, что он действителен только в течение года или 365 дней. If your Eclipse IDE uses an expired debug certificate, you will not be able to create and/or deploy an Android app
,
Чтобы решить эту проблему, все, что вам нужно сделать, это удалить файл debug.keystore .
Go to Preferences
Android
Build
Default debug keystore
Там вы должны увидеть папку, в которой находится файл. Просто удалите этот файл, и все готово.
Для получения дополнительной информации. Вы можете посетить
http://developer.android.com/tools/publishing/app-signing.html
Чтобы решить эту проблему, просто удалите файл debug.keystore.
Место хранения по умолчанию для AVD
В ~ / .android / на OS X и Linux.
В C: \ Documents and Settings \ .android \ в Windows XP
В C: \ Users \ .android \ в Windows Vista и Windows 7.
Также смотрите эту ссылку, которая может быть полезна.
http://developer.android.com/tools/publishing/app-signing.html