今天在升级一个早期Android项目到新版Eclipse ADT SDK后,编译运行项目后Android Console中出现标题中的错误,特此记下解决方法:
导致这个问题的原因是由于Android项目属性中的Java Compiler设置为1.6版本的,而Eclipse的Preference中的被设置为1.7所致,也换成1.6就不会提示这个错误了!
欢迎留言、转载请注明出处
今天在升级一个早期Android项目到新版Eclipse ADT SDK后,编译运行项目后Android Console中出现标题中的错误,特此记下解决方法:
导致这个问题的原因是由于Android项目属性中的Java Compiler设置为1.6版本的,而Eclipse的Preference中的被设置为1.7所致,也换成1.6就不会提示这个错误了!
最近开始研究Google Play的In-app Billing IAB内置计费API,发现一个比较烦人的问题就是测试时应用必须经过正式签名,而默认Eclipse ADT调试运行使用的是临时生成的Debug专用证书,默认为C:\Users\XXX\.android\debug.keystore。
于是每次调试内置计费必须使用ADT的Export Signed Application Package打带正式签名的包,比较麻烦。后来发现ADT允许自定义调试用证书,在Window->Preferences->Android->Build->Custom debug keystore这里,试了一下选择正式证书后提示:”Keystore was tampered with, or password was incorrect”,如下图所示:
Continue reading…
今个发现个Eclipse的插件sequoyah,说可以使Eclipse支持Android的原生调试(Native Debug),但发现现在用的Eclipse 3.5+CDT 6.0不被支持,于是打算升级一下开发环境。
下了目前最新的3.7 Indigo(Classic版)以后发现ADT插件竟然安装报错,顺着依赖关系一看,最后是由于这个没有:”org.eclipse.wst.sse.core 0.0.0″,查了相关资料发现可能是ADT依赖了一些老版本Eclipse的lib,最后发现解决方法如下:
将Helios的Update Site – http://download.eclipse.org/releases/helios加入到更新站列表里,然后重新安装ADT,便会从Helios的站点上下载所依赖的那些库,然后安装就ok了,希望后面使用别再出什么问题…
原来的Android项目中,鼠标移上系统api的函数什么的后会显示javadoc注释,很方便,后来换过一次sdk位置,结果发现系统api的注释都没了,其实只要修改一下项目属性中的Java Build Path中Libraries里对应SDK的jar的Javadoc location就可以了,更新路径后,这个属性没有对应修改。
之前我曾经写过一篇如何为用ADT创建的Android项目添加Proguard混淆支持的文章(
为Eclipse ADT创建的android项目通过ant添加proguard混淆支持
),当时我就说过,相信随着Google Android的不断更新发展以及Eclipse ADT插件的不断改进,总有一天,做Android项目时能够和J2ME项目一样方便的一键打包混淆。现在新版的SDK和ADT就已经添加了这样的功能(SDK Tools中已经整合了Proguard的发行包,连这步配置都省了!),虽然还不是一键,但也就是小改一个配置文件的事,相对以前的手改ant xml build file的做法来说已经是极大的简化了添加混淆支持的难度了。
先说说我写这篇文章时用的开发环境:Eclipse 3.5.2+ADT 9.0.0+SDK Tools R9+SDK Platform-tools R2。
声明我不保证在其他版本的IDE ADT和SDK Tools下我的方法是否可行且不会产生问题!
假设已有ADT创建的android项目HelloAndroid并且已经有可用的proguard混淆器(我用的proguard4.4)。
第一步要做的是为项目添加ant build支持。由于ADT插件并不直接支持proguard等混淆器,所以不能像j2me那样在有功能比较完善的插件(如EclipseME等)的基础上直接一键混淆一键打包,不过好在android sdk本身提供了比较完善的ant编译支持,可以通过类似命令行编译的方式,对android项目的整个编译、生成过程进行自定义,从而能够实现对编译中途生成的java bytecode进行插入proguard混淆操作然后再转android dex码生成apk。
进入命令行模式,并切换到项目目录,执行如下命令为ADT创建的项目添加ant build支持:
Continue reading…