0

我在我的应用程序中使用 zxing 库进行条码扫描。所以我已将 zxing 项目设置为库并将该库添加到我的项目中(属性 - > android - > 添加库)

在构建代码时添加库项目后,我看到在我的项目中创建了两个 R.java 文件。

一个在路径下:gen\com\google\zxing\client\android

另一个: gen\myproject

第一个包含库中的所有资源变量以及我项目中的资源变量。第二个只有我的项目中的资源变量。添加新布局或资源变量时,它会在两个文件中更新

所以我的疑问是: 1. 为什么有两个 R.java 文件 2. 有没有办法可以停止生成包含所有库项目变量的文件

由于这种行为,我遇到了非常难以调试的非常奇怪的问题。

在我的 zxing 库中,当我们尝试扫描条形码时,将设置一个布局“捕获”。每当我添加名称以字母“a”/“b”开头的任何布局或任何资源变量时,我的应用程序都会出现奇怪的行为。当我刚刚重命名布局时,一切都很完美。后来我发现它与 R.java 文件中“捕获”的 id 有关。当我定义一个以字母开头的布局时,它将在“捕获”之前插入到 R.java 列表中,因此捕获的 id 正在改变。(在我设置为库的实际 zxing 项目中还有另一个 R.java 文件。所以看起来我的 R.java 文件中捕获的 id 和 zxing 库 R.java 应该相同)

你能解释一下这里到底发生了什么吗

4

1 回答 1

0

我认为您包括完整的项目...

如果是这样,请删除它,并且仅将此文件导入您的项目:

http://code.google.com/p/zxing/source/browse/trunk#trunk%2Fandroid-integration%2Fsrc%2Fcom%2Fgoogle%2Fzxing%2Fintegration%2Fandroid%253Fstate%253Dclose

这就是你所需要的:)

于 2012-03-29T11:53:31.807 回答