首页 > 代码库 > android中导入低版本project可能会遇到的编译问题(转自: Victor@Beijing)

android中导入低版本project可能会遇到的编译问题(转自: Victor@Beijing)

使用高版本的SDK后再导入以前用低版本的project时,会遇到一些兼容性的问题。 
(1)Unable to resolve target ‘android-5‘ 
因为本机中现在使用的是2.2的SDK,API的版本是8;而导入的工程使用的是2.0开发的,其API版本是5。 
需要将default.properties中的target=android-5改为target=android-8就好了。 
但要注意,也要同步将AndroidManifest.xml中的<uses-sdk android:minSdkVersion="5" />改为<uses-sdk android:minSdkVersion="8" />,否则编译中会警告提示使用的版本过低。 
(2)以上完成后,编译中又出现一个新的错误:Conversion to Dalvik format failed with error 1 
这个与加载的SDK有关,通过“右键选择工程build path -> configure build path... -> libraries发现导入的JARs中除了一个Android 2.2外还有一个同路径下的文件夹item,将其移除 
(3)如果工程上面还显示“x”图标,就点击 菜单 project ->clean一下再编译就没问题了。 

http://blog.sina.com.cn/s/blog_7c9b7f7f0100qtgl.html 
==== 
下载了的源代码怎么像我eclipse里面建的项目一样,以一个项目的方式打开下载下来的源码呢?? 
选择「File->Import」选项,会跳出「Import」视窗。选择「General->Existing Projects into WorkSpace」项目,然后按下「Next」按钮带到新一个画面。在「Select Root Directory」栏位旁,按下右方的「Browse...」按钮,选择对应的工程。选择好后,按下「Finish」按钮完成从现存在工作环境(WorkSpace)资料夹下的工程汇入到Eclipse 环境的动作。 

http://www.mars-droid.com/bbs/archiver/?tid-2382.html 
==== 
今天导入一些源码进行研究,报错Unable to resolve target ‘android-5‘。 

网上一些朋友说是因为自己所使用的版本比导入的工程的版本高而导致的编译问题。 

解决方法如下: 

修改项目中的 default.properties 将target属性修改为当前自己使用的SDK版本,我修改为 android-8 

同时修改 AndroidManifest.xml 中的 android:minSdkVersion 也为当前使用的SDK版本即可,我修改为 “8”,问题解决。 
http://blog.csdn.net/qiuzhimou/article/details/6564604 
==== 

右键点击项目选择Properties,把Libraries下Android x.x给remove了。 
点右侧的Add Library,选择JRE System Library然后next,重新指定JRE。 
确定之后右键项目选择Android Tools下Fix Project Properties。 
Project里clean下项目,之后就正常运行了。 
网上说的重新指定target的试过不好使。 
http://blog.sina.com.cn/s/blog_7705f5140100tpm0.html 
==== 
部署了Android 2.0 SDK,运行之前用1.5编写的工程,得到失败信息如下: 
”[...]Could not find XXXXX.apk!“ 
网上搜到下面的解决方法: 
http://www.devdiv.net/viewthread.php?tid=15563 
文中针对的是Android 1.5 SDK环境下的这个错误,经验证,同样适用于Android 2.0的这个错误。 
1) 选择工程的Properties->Java Build Path->Libraries,去掉默认的Android包; 
2) 点击左侧的Android标签,在右边的Project Build Target中选择Android 2.0; 
3) 右键单击工程,选择Android Tools->Fix Project Properties. 
前两步对于任何适用1.x SDK编写的工程都是需要的。 
http://blog.csdn.net/lpf66fpl/article/details/5387689 
==== 
refresh(F5)一下 default.properties内修改target=android-10 
http://topic.csdn.net/u/20110825/10/d096692f-ea17-4baa-b128-5bb97988a1bb.html 
==== 
我今天做了一个小项目,心浮气躁想要快点完成东西。 
结果不分青红皂白就建了项目,写得过程老是“爆菊”,郁闷死了。 
后来发现是SDK的版本不对,但是项目做了大部分,总不可能重新建项目再复制进去,这样也不对。 

后来,我同学传授我一招必杀技! 
在project.properties这个文件的,那行 “ target=android-4 ”改为了 “ target=android-8 ” 就解决了。 
从SDK1.6 就变为了 2.2。 
哇靠!真暴力,一下子就搞定了。 

不过,我暂时还没有发现其他的并发症出现。至少项目这样一下,就解决了所有的爆菊。 

http://www.apkbus.com/forum.php?mod=viewthread&tid=17671 

android中导入低版本project可能会遇到的编译问题(转自: Victor@Beijing)