Android中解决debug.keystore到期的问题

开发Android或者jee或者其他java应用时,如果eclipse中的项目前有个红叉叉,但是src下有没有任何提示错误但是又不能通过编译的时候如何找到项目工程的错误根源呢?方法如下:

打开eclipse的problem视图(如果关闭了可以在window->show view下找到problem视图),然后在视图中就可以看到项目的根源问题何在了,呵呵。

言归正传,回到我遇到的问题上。

问题描述:

在导入一个Android App后提示如下错误:

Description Resource Path LocationType

Error generating final archive: Debug Certificate expired on 8/18/11 9:30 PMxxxxxx(这个是我的项目名称)UnknownAndroid Packaging Problem

原因分析:

android要求所有的程序必须有签名,否则就不会安装该程序。在我们开发过程中,adt使用debug keystore,在eclipse中的preference->android->buid中设置。debug的keystore默认有效期为一年,如果你是从一年前开始着手android开发的,那么在一年后很可能出现debug keystore过期,导致工程出错(比如我的情况)或者无法生成 apk文件等等(由于我的eclipse和sdk/adb等重新安装折腾过好多次了,一直没遇到这个问题,今天运气好碰上了,呵呵)。

解决方法:

只要删除debug keystore和ddms.cfg文件即可,系统会为你重新生成有效期为一年的私钥。 debug keystore和ddms.cfg文件地址位于:

1)linux(Mac OS):

在eclipse中的Window->Preferences->Android->Build中Default debug keystore查看keystore的地址:

“/home/用户名/.android/debug.keystore”

删除此路径下的debug.keystore及 ddms.cfg

2)Windows:

进入:C:\Documents and Settings\用户名\.android 删除:debug.keystore及 ddms.cfg

进入:C:\Documents and Settings\Administrator\.android删除:debug.keystore及 ddms.cfg

(注意:即使是Windows下也应该在eclipse中的Window->Preferences->Android->Build中Default debug keystore查看keystore的地址位置,否则会出现找不到文件的情况)

发表评论

电子邮件地址不会被公开。 必填项已用*标注