Eclipse Android插件中的“debugging证书过期”错误
我正在使用Eclipse的Android插件来build立一个项目,但我在控制台窗口中得到这个错误:
[2010-02-03 10:31:14 - androidVNC]Error generating final archive: Debug certificate expired on 1/30/10 2:35 PM!
我该如何解决?
在Linux和Mac OS X上的~/.android/debug.keystore下删除您的debugging证书; 该目录是类似于Windows上的%USERPROFILE%/.android 。
然后,Eclipse插件应该在下次尝试构builddebugging包时生成新的证书。 您可能需要清理并生成证书。
安装后,Android SDK会在名为debug.keystore的密钥库中为您生成一个debug签名证书。 Eclipse插件使用此证书签署每个生成的应用程序生成。
不幸的是,debugging证书只有365天有效。 要生成一个新的,你必须删除现有的debug.keystore文件。 它的位置是依赖于平台的 – 你可以在Preferences – Android – Build – Default debug keystore中find它。
删除所有的开发.apk文件是很痛苦的,因为新的证书不匹配,所以你不能在所有的AVD中升级它们。 您还必须获得另一个开发MAP-API密钥。 还有另一个解决scheme。
您可以在debug.keystore创build您自己的debugging证书,并使用任何期限。 在HOME目录下的.android文件夹中执行此操作:
keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android -keyalg RSA -validity 14000
可以在JDK bin文件夹中findkeytool.exe (例如Windows上的C:\Program Files\Java\jdk1.6.0_31\bin\ )。
ADT将证书上的名字和姓氏设置为“Androiddebugging”,组织单位为“Android”,双字母国家代码为“美国”。 您可以将组织,城市和州的值保留为“未知”。 这个例子使用了14000天的有效期。 你可以使用任何你喜欢的值。
在Vista上,这工作:
-
DOS:
del c:\user\dad\.android\debug.keystore -
ECLIPSE:在项目中,清理项目。 closuresEclipse。 重新打开Eclipse。
-
ECLIPSE:启动模拟器。 从模拟器中删除应用程序。
你已准备好出发。
当我说这个错误的时候,我非常担心,但是我在这里读了10分钟,
- 视窗
删除:位于C:\Documents and Settings\\[user]\.android 。android中的debug.keystore ,清理并构build您的项目。
- Windows 7转到
C:\Users\[username]\.android。android并删除debug.keystore文件。
清理和build立你的项目。
- 苹果电脑
删除位于~/.android/debug.keystore keystore清理并构build您的项目。
在所有的选项,如果你不能得到新的debug.keystore只是重新启动eclipse。
在Windows 7中,它是在路上
C:\Users\[username]\.android
- 转到这个path并删除
debug.keystore - 清理并build立你的项目。
如果证书在项目debugging过程中过期,则必须执行手动卸载 :
请在shell中执行adb uninstall <package_name> 。
在Mac上,打开控制台(当前用户的目录应该打开),cd“.android”(“ls”validationdebug.keystore在那里)。 最后“rm debug.keystore”删除文件。
Android SDK为您在名为debug.keystore的密钥库中为您生成一个“debugging”签名证书。Eclipse插件使用此证书对生成的每个应用程序生成进行签名。
不幸的是,debugging证书只有365天有效。 要生成一个新的,你必须删除现有的debug.keystore文件。 它的位置是依赖于平台的 – 你可以在Preferences – > Android – > Build – > * Default debug keystore中find它。
如果您使用Windows,请按照以下步骤操作。
DOS:del c:\ user \ dad.android \ debug.keystore
Eclipse:在项目中,清理项目。 closuresEclipse。 重新打开Eclipse。
Eclipse:启动模拟器。 从模拟器中删除应用程序。
如果您使用Linux或Mac,请按照以下步骤操作。
手动删除.android文件夹中的debug.keystore 。
你可以find这样的.android文件夹: home/username/.android
注意:默认的.android文件将被隐藏。
所以点击地点菜单。 在select的主文件夹下。 点击查看,点击显示隐藏文件,然后.android文件夹将是可见的。
从.android folder删除debug.keystore 。
然后清理你的项目。 现在Android会生成一个新的.android folder文件。
几个星期前我有这个问题。 我首先尝试了Android开发人员网站上的故障排除 ,但没有运气。 之后,我重新安装了Android SDK,解决了我的问题。
嗯。 有趣的是,有这么多的人有这样的经验略有不同。 我记得当时这被认为是软件没有准备好发布的一个标志,团队实际上会修复它,在用户开始看到这些问题:(
我自己的经历只是有点不同。 我已经尝试了项目>清洁,但仍然有相同的生成失败。 然后我删除了debug.keystore(在.android下),就像第一个答案所说的那样。 仍然有同样的问题。 然后我再次做了一个清洁,奇迹奇迹,它的工作!
现在不要误解我的意思了,我很高兴得到了这个线程的提示。 但显然干净是不正确的,它是如何find一个过期的密钥后,我删除了密钥库? 显然,Eclipse或ADT有什么问题 – 不确定哪一个是错误的。
在Ubuntu上,这工作:
我去了home/username/.android ,我把keystore.debug重命名为keystoreold.debug 。 然后closuresEclipse,启动Eclipse,SDK在该文件夹中创build新的证书keystore.debug 。
然后,您必须卸载/重新安装您通过USBdebugging安装的应用程序或未经签名的APK(“未签名”APK =使用debugging证书签名)。
对于Windows XP转到C:\Documents and Settings\%userprofile%\.android并删除debug.keystore文件,重新启动eclipse,现在您的项目得到生成没有错误。
示例path:
C:\Documents and Settings\raja.ap\.android\
在这里阅读更多 。
在Windows中, debug.keystore文件位于C:\Users\%Username%\.android文件夹中。 这个文件是在您安装android SDK时创build的,并且仅在一年内有效。 在这个perod之后,你会开始得到这个错误Error getting final archive: Debug certificate expired on xx/xx/xxxx 。
要删除此错误,只需删除该文件并再次运行该程序。 在我的Eclipse中,我启用了Project->Build Automatically所以它直接工作,但如果你已经禁用它,你将需要清理项目Project->Clean ..select你的项目,然后按确定。 那么你将需要手动build立它。 第三步点击你的项目,然后selectBuild project (注意 – 如果在项目菜单中有自动生成自动生成function,你将只能看到这个选项)
首先closures日食
通过Window Key + R或通过以pipe理员身份运行打开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。
Android SDK in Eclipse安装Android SDK in Eclipse ,它会在名为debug.keystore的密钥库中为您生成一个debugging签名证书。 Eclipse插件使用此证书签署每个生成的应用程序生成。
现在,这个debugging证书的问题是它只有一年或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上。
在Windows XP上的C:\ Documents and Settings \ .android \中
在Windows Vista和Windows 7上的C:\ Users \ .android \中。
也看到这个链接,这可能是有帮助的。
http://developer.android.com/tools/publishing/app-signing.html