目标版本有误和gen目录无文件的解决

在导入外部安卓包的时候常会遇到这种错误

类似这样——Unable to resolve target 'android-18'

是因为目标安卓版本与当前系统拥有的安卓版本不一样。

一般的解决方法是(eclipse下)

(一)、工具栏Project—clean

clean的作用主要就是把编译好的class等文件删除,激活eclipse的自动编译。
解决的问题就是,有时候你把代码改了,但因为一些未知的原因,eclipse的自动编译没有成功,导致运行结果不正常。
之前出现拖动布局后运行有FC的现象时就是用它解决的。

但有时这招对这种情况是没有用的,还会把gen目录下的R文件给搞丢。
所以用第二种方法,在第一种试过之后也可以挽救回R文件。

(二)、右键工程—属性—Android,先用低级的版本,再使用系统的默认版本。

  两下Apply解决问题

  在使用低级版本的时候,gen目录里面的文件就会回来的。

  再使用系统默认版本(或者是高级的,我的电脑只装了android-10和android-19,默认的是android-19),错误就会消失。

 

再贴一份网上找的解决gen目录为空的解决方法的文章,虽然还没遇到过,但也顺便提醒自己注意,尤其是是否引入了android.R,这点还是吃过亏的。

http://www.linuxidc.com/Linux/2012-03/55830.htm

 

笔者最近在开发Android应用程序的时候,发现gen目录无法更新,或者gen目录下的R.JAVA文件无法生成,这让很多人初级开发者很头疼。所以笔者特将自己的经验总结一下,分享给大家。

1、首先说一下gen目录的用处:android gen目录下的R.java并不是由用户创建了,而是android工程本身将android的资源进行自动“编号”(ID)值。

2、引起gen目录下的R文件无法更新的原因有如下几个:

(1)、res目录下的layout下的xml文件名有错。按照android的命名规范是:[a-z0-9_.]  这里要看清楚了,是不能大写开头的!导致xml无法被正确解析。

(2)、layout下的xml文件里面的存在非法字符,一般在eclipse下会进行提示,如果发现有打X的情形,就需要进行修改。特别要注意是半角符号和全角符号,这个错误很隐蔽,大家要小心。还有要符合xml的书写规范。

(3)、layout下的xml文件里,控件的ID值命名有重复。这个错误很隐蔽,大家要仔细检查。因为eclipse本身并不会报错。

3、解决方法:

如果上述的原因都找了,这个时候gen目录下的R依然出错,对android工程进行refresh一下,看R文件是否已经更新。

还可以将project ->Build Automatically尽心勾选,让eclipse帮你进行自动更新。如果再不行的话,就尝试进行clean一下,看是否会正常得自动生成。

如果上述的原因都找了,但是源代码依然有错,这个使用你看一下,import android.R 这个包是否被引入了,如果被包含了,请将这个包去掉,否则错误无法解除。

以上基本上就是大家在android开发的过程中,经常遇到的R文件出错的问题,希望对大家有帮助。

 

第一次写文章,好像没多少文字是自己写的,不断学习,不断进步吧~加油!

posted @ 2014-02-07 13:51  但行好事  阅读(455)  评论(0)    收藏  举报