提问人:hap497 提问时间:2/4/2010 最后编辑:Damian Kozlakhap497 更新时间:12/4/2021 访问量:281819
Eclipse Android 插件中的“调试证书已过期”错误
"Debug certificate expired" error in Eclipse Android plugins
问:
我正在使用 Eclipse Android 插件来构建一个项目,但我是 在控制台窗口中收到此错误:
[2010-02-03 10:31:14 - androidVNC]Error generating final archive:
Debug certificate expired on 1/30/10 2:35 PM!
我该如何解决?
答:
几周前我遇到了这个问题。我首先在 Android 开发者网站上尝试了故障排除,但没有运气。之后,我重新安装了Android SDK,解决了我的问题。
在 Linux 和 Mac OS X 上删除调试证书;该目录类似于 Windows 上的目录。~/.android/debug.keystore
%USERPROFILE%/.android
然后,当您下次尝试构建调试包时,Eclipse 插件应生成一个新证书。您可能需要清理,然后生成以生成证书。
评论
安装后,Android SDK 会在名为 的密钥库中为您生成签名证书。Eclipse 插件使用此证书对生成的每个应用程序构建进行签名。debug
debug.keystore
遗憾的是,调试证书的有效期仅为 365 天。要生成一个新文件,您必须删除现有文件。它的位置取决于平台 - 您可以在首选项 - Android - 构建 - 默认调试密钥库中找到它。debug.keystore
评论
在 Vista 上,这奏效了:
注意事项:
del c:\user\dad\.android\debug.keystore
ECLIPSE:在项目中,清理项目。关闭 Eclipse。重新打开 Eclipse。
ECLIPSE:启动仿真器。从模拟器中删除应用程序。
你已经准备好了。
当我说这个错误时,我非常担心,但我从阅读这里并玩了 10 分钟来修复它。
有趣的是,这么多人对此的体验略有不同。我记得这被认为是软件尚未准备好发布的迹象,团队实际上会在用户开始看到这些问题之前修复它:(
我自己的经历只是有点不同。我已经尝试过 Project>Clean,但仍然遇到相同的构建失败。然后我删除了debug.keystore(在.android下),就像第一个答案所说的那样。仍然有同样的问题。然后我又做了一次清洁,奇迹中的奇迹,它奏效了!
现在不要误会我的意思,我很高兴我让它工作,这要归功于这个线程中的提示。但显然干净的工作不正常,在我删除密钥库后,它是如何找到过期密钥的???显然,Eclipse 或 ADT 有问题——不太确定是哪一个。
评论
必须删除所有开发.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
可以在 JDK bin 文件夹中找到(例如 在 Windows 上)。C:\Program Files\Java\jdk1.6.0_31\bin\
ADT 将证书上的名字和姓氏设置为“Android Debug”,将组织单位设置为“Android”,将两个字母的国家/地区代码设置为“US”。您可以将组织、城市和省/自治区/直辖市此示例使用的有效期为 14000 天。您可以使用任何您喜欢的值。
评论
如果证书在项目调试过程中过期,则必须执行手动卸载:
请在 shell 中执行。adb uninstall <package_name>
在 Mac 上,打开终端(当前用户的目录应该打开),cd “.android”(“ls”以验证 debug.keystore 是否存在)。最后 “rm debug.keystore” 删除文件。
- 窗户
删除:位于 C:\Documents and Settings\\[user]\.android 的 debug.keystore
,清理并构建您的项目。
- Windows 7 转到
C:\Users\[用户名]\.android 并删除 debug.keystore
文件。
清理并生成项目。
- 苹果电脑
删除位于 ~/.android/debug.keystore
中的密钥库 清理并构建您的项目。
在所有选项中,如果无法获得新的debug.keystore,只需重新启动eclipse即可。
在 Ubuntu 上,这奏效了:
我去了,我重命名为 .然后,我关闭了 Eclipse,启动了 Eclipse,SDK 在该文件夹中创建了新证书。home/username/.android
keystore.debug
keystoreold.debug
keystore.debug
然后,您必须卸载/重新安装通过USB调试或未签名的APK(“未签名”APK=使用调试证书签名)安装的应用程序。
在 Windows 7 中,它位于路径中
C:\Users\[username]\.android
- 转到此路径并删除
debug.keystore
- 清理并生成项目。
Android SDK 会在名为 的密钥库中为您生成“调试”签名证书。Eclipse 插件使用此证书对生成的每个应用程序构建进行签名。debug.keystore
遗憾的是,调试证书的有效期仅为 365 天。若要生成新文件,必须删除现有文件。它的位置取决于平台 - 您可以在首选项 -> Android -> Build -> *默认调试密钥库中找到它。debug.keystore
如果您使用的是 Windows,请按照以下步骤操作。
DOS: del c:\user\dad.android\debug.keystore
Eclipse:在项目中,清理项目。关闭 Eclipse。重新打开 Eclipse。
Eclipse:启动模拟器。从模拟器中删除应用程序。
如果您使用的是 Linux 或 Mac,请按照以下步骤操作。
手动从文件夹中删除。debug.keystore
.android
您可以找到如下所示的文件夹:.android
home/username/.android
注意:默认文件将被隐藏。.android
因此,单击位置菜单。在选择主文件夹下。在单击视图下,在单击显示隐藏文件下,然后该文件夹将可见。.android
从 中删除。debug.keystore
.android folder
然后清理您的项目。现在 Android 将生成一个新文件。.android folder
对于 Windows XP,转到并删除 debug.keystore 文件,重新启动 eclipse,现在您的项目可以毫无错误地构建。C:\Documents and Settings\%userprofile%\.android
示例路径:
C:\Documents and Settings\raja.ap\.android\
在 Windows 中,文件位于文件夹。此文件是在您安装 android SDK 时创建的,有效期仅为一年。在此操作之后,您将开始收到此错误。debug.keystore
C:\Users\%Username%\.android
Error getting final archive: Debug certificate expired on xx/xx/xxxx
要删除此错误,只需删除文件并再次运行程序即可。在我的Eclipse中,我已经启用了它,因此它直接起作用,但是如果您禁用了它,则需要清理该项目。选择您的项目,然后按 OK。然后,您将需要手动构建它。第 3 次单击您的项目并选择 .(注意 - 只有在“项目”菜单中禁用了“自动构建”功能时,才会看到此选项)Project->Build Automatically
Project->Clean
Build project
首先关闭日食,然后
通过 Window 键 + R 或通过以管理员身份运行打开 CMD
按照以下步骤操作
del "%USERPROFILE%\.android\debug.keystore"
keytool -genkey -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android -keyalg RSA -validity 30000
在此重新启动 eclipse 之后。
要解决此问题,只需删除 debug.keystore 文件即可。
AVD 的默认存储位置为
在 OS X 和 Linux 上的 ~/.android/ 中。
在 Windows XP 上的 C:\Documents and Settings\.android\ 中
在 Windows Vista 和 Windows 7 上的 C:\Users\.android\ 中。
另请参阅此链接,这可能会有所帮助。
http://developer.android.com/tools/publishing/app-signing.html
安装 后,它会在名为 debug.keystore 的密钥库中为您生成调试签名证书。Eclipse 插件使用此证书对生成的每个应用程序构建进行签名。Android SDK in 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。然后运行该应用。它将生成新的。C:\Users\%Username%\.android
评论