第一次遇到RT错误,特来记录一番
首先说明一下,我是在混淆签名打包的时候遇到的这个问题。我所用版本是sdk 2.3,而且再次之前3分钟我刚顺利打完一个包,三分钟之后却给我整这么一串英文出来,容我粗鲁一句,坑爹的eclipse坑姐的Android。
然后经过一番google,baidu,先总结一下网上的诸多解决方案,可能不同的人报错原因不一样(但目前我的报错原因依然不明不白),日后难免需借鉴。
1、如果不修改android sdk版本,则使用project clean 命令作用于某工程即可。 (该处理方式
只是在高版本中兼容了低版本工程,未真正意义上的升级)
2、如果修改android sdk版本,则需要以下几个步骤:
1) 修改SDK
选择工程,build path --> configure build path ---> library 删除引用的低版本SDK,
然后add External JARs,选择高版本SDK,OK,保存
2) 修改classpath文件
该文件可能存在该项: <classpathentry kind="lib" path ="你所指定的高版本的地址"
把她修改成<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK" />
3) 修改AndroidManifest.xml
在AndroidManifest.xml文件中,application标签后添加<uses-sdk android:minSdkVersion="3"></uses-sdk>
4) 修改default.properties(很重要)
该文件最后一行(前面没用#的)target=android-3 该成target=android-8,保存。
3.检查下你引用的第三方Jar包是否有误(路径,版本等是否有冲突)
4.还有诸位兄弟在项目加入混淆之后导出时报该错(报错时机和我一样,但解决方案不一样,也可参考),解决方案:
在SDK安装目录下的\tools\proguard\bin目录找到proguard.bat文件,将把
call %java_exe% -jar "%PROGUARD_HOME%"\lib\proguard.jar %*
改为:
call %java_exe% -jar "%PROGUARD_HOME%"\lib\proguard.jar %1 %2 %3 %4 %5 %6 %7 %8 %9
即可! 就是改成和之前SDK版本中含有的proguard.bat文件一致。
然后说我自己。
试过如上所有解决方案,我的问题还是没有解决,导出apk依然报错,考虑到我的环境,源代码都没有改变(Eclipse都没关闭过),猜想可能是生成文件的问题,按照老套路把工程clean了一下,如旧。打开工程根目录,发现里面有个proguard文件夹,里面有几个我没见过的文件。怀疑是什么时候不知不觉生成的,抱着一试的心态手动将其删除。OK,问题解决。