今天遇到一个超级郁闷的事情,Eclipse新建的项目全部都打有红叉,我起初以为自己可能是因为这两天一直在配置NDK开发环境方面的东西,是不是一不小心把那个地方给配置了,然后新建项目时项目都会出现红叉的效果。然后我clean了一下,遭大糕了,所有的项目都出错了。
打开下面的错误提示:
错误的意思:Debug Certificate 过期了的缘故。百度了一下,果然也有遇到相似的问题,说是牵涉了一个私钥的时间期限问题。
解决办法是:进入:C:\Documents and Settings\Administrator\.android 删除:debug.keystore及 ddms.cfg 再重新打开Eclipse 再接着Clean清理一下就OK了。
注:打开eclipse的problem视图(如果关闭了可以在window->show view下找到problem视图),然后在视图中就可以看到项目的根源问题何在。
原因分析:android要求所有的程序必须有签名,否则就不会安装该程序。在我们开发过程中,adt使用debug keystore,在eclipse中的preference->android->buid中设置。debug的keystore默认有效期为一年,如果你是从一年前开始着手android开发的,那么在一年后很可能出现debug keystore过期,导致工程出错或者无法生成 apk文件等等(想想我确实是一年前的这个时候开始的android应用程序的开发)。