3

我正在使用 Linux (ADT v21.1.0-569685) 上的 Android 开发人员工具 (ADT) 附带的最新 Eclipse。我继承了一个大型 Android 项目,Eclipse 不会构建它。

像这样的错误有数百个:“错误:资源条目已定义”。

在 res/values/string.xml 中: <string name="about">About</string>

在 res/values-de/string.xml 中: <string name="about">Über</string>

据我所知,这是在 Android 上执行 i18n 的常见且正确的方法,但 Eclipse 将其全部视为错误。

这不是在其他地方询问和回答的“主要”资源和 XML 执行的“已定义”错误。我没有运行任何 XML 转换,也没有任何“额外”的 XML 文件。

这似乎不是 Eclipse 配置错误,因为如果我创建一个具有完全相同条目的小型示例项目,则重复不会导致“已定义”错误。

4

2 回答 2

2

当 res/raw 目录下的几个文件共享相同的文件名(不带扩展名)时,它发生在我身上。比如,例如:

  • 我的文件.csv
  • 我的文件.zip

当你从这个目录加载资源时,Android 只需要标识符(在我们的例子中:raw/myFile):

int resId = res.getIdentifier("raw/myFile","raw", ctx.getPackageName()) ;

希望能帮助到你。

于 2014-01-17T14:58:49.390 回答
2

当资源限定符的组合无效时,也会发生此错误。

例如,drawable-xhpdi-v1实际上没有意义,因为 xhdpi 直到 v8 才引入。

于 2013-10-03T13:49:02.220 回答