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