本文主要介绍由于Android应用程序签名过期而导致的问题
今天打开Eclipse中一个Android项目突然发现编译出错
现象如下:
1、项目名文件夹上有个红叉,但是项目中其他文件都没有出现红叉(若是后台java出错或是资源找不到会在相应文件有红叉提示)。
2、项目无法编译,没有生成R.java,没有任何编译信息提示,Console控制台没有任何信息打印(若是layout等xml出错,可以编译,可能有错误信息提示)
3、新建了一个空的Android项目依然出错
解决方法:
1、Project->Properties->Clean,平时万能的解决方法无法奏效
2、打开C:\Documents and Settings\当前用户\(win7是C:\用户\当前用户\),删除.android文件夹,奏效。
原因:
第二种方法后仔细调试后是因为.android文件夹中debug.keystore和ddms.cfg文件(实际删除此两文件即可解决问题)的问题,后网上查了下,是因为应用程序签名到期所致。android要求所有的程序必须有签名,否则就不会安装该程序。在我们开发过程中,adt使用debug keystore,debug的keystore默认有效期为一年。在eclipse中的preference->android->buid中设置
参考:http://blog.csdn.net/svrsimon/article/details/7204569
http://blog.csdn.net/t5721654/article/details/6865232
分享到:
相关推荐
在Android开发环境中,如Android Studio,开发者编写完应用代码后,需要编译项目。编译过程会将源代码转换为Dalvik字节码,并将所有资源打包成`.apk`文件。这通常通过点击“Build”菜单中的“Generate Signed ...
【基于Android的药材管理作业】是一项开发任务,旨在利用Android平台构建一个用于药材管理的应用程序。这个应用可能包含了药材信息的录入、查询、修改、删除等基础功能,以及库存管理、药材分类、有效期提醒等高级...
- **安全机制**:Android采用沙箱模型,每个应用程序运行在自己的进程中,并拥有独立的Linux用户ID,确保应用间数据隔离。 - **权限管理**:应用程序必须声明所需权限(如访问联系人、使用摄像头等),并在安装时...
如果开发者从一年前开始开发某个Android项目,并在此期间没有更新或替换过`debug.keystore`,那么当一年之后再次尝试构建应用时,就会因为`debug.keystore`已经过期而导致构建失败。 - **路径问题**:`debug....
uni-app是一个跨平台的开发框架,它允许开发者使用Vue.js语法一次性编写代码,然后编译成适用于H5、iOS、Android、微信小程序、钉钉小程序和支付宝小程序的六种不同平台的应用。这种跨平台能力显著提高了开发效率,...
- Sandboxing(沙盒)是一种安全机制,用于隔离应用程序的不同部分,限制它们访问系统的权限。 - Chromium使用沙盒来保护用户的系统免受恶意网站的攻击。 - **功能特点**: - 沙盒可以限制进程访问文件系统、...