-2

我正在开发一个项目,修改来自蓝牙 Android 应用程序 Blueterm 的代码。在构建项目时,我收到多个错误,说“R 无法解析为变量”。我尝试清理项目,以及删除 R.java 文件,但没有成功。我还确保 AndroidManifest.xml 文件中的包名称是正确的。

我现在被困住了,真的很想对此有任何意见。

4

5 回答 5

2

我刚刚使用了一个新项目(R.Java)的复制和粘贴,它修复了所有问题。缺少 R Java。

于 2012-10-17T21:38:19.607 回答
2

查看有问题的文件并查看 R 在哪个包中。如果您将代码导入到您的项目中,它可能指向旧包中的 R。

例如,我最近复制com.android.HttpAuthenticationDialog到一个项目中。它引用R期望它com.android是应用程序的包。由于该项目实际上com.examplecom.android.R不存在的。

我需要将类移动到com.example包中或添加import com.example.R;到 Java 文件中。

如果您更新 AndroidManifest.xml 以使用不同的包,也会发生这种情况。例如,如果您从 更改com.bluetoothcom.mybluetooth,则 R 类将移至com.mybluetooth.R. 任何期望com.bluetooth.R存在的类都会有这个错误。

于 2012-06-22T19:44:03.653 回答
1

因此,即使我多次修复了 R.java。我一直有各种各样的问题。我一个接一个修好了。

但我发现了一些奇怪的东西;

在我的 SRC 文件夹(对于我的项目)中,R.java 文件夹被锁定(这是在 windows 中而不是在 eclipse 中)。它上面有一个锁形图标。我右键单击并获得了它的所有权。在清理、保存和等待之后,最终 Eclipse 修复了它,现在错误消失了。

如果您需要知道如何获取文件的所有权,只需在 google 上搜索即可。

如果您知道我的一个文件是如何像这样被锁定的,那就太好了!谢谢!

于 2012-10-25T17:59:38.130 回答
0

这是由您的 android sdk 管理器上的更新引起的。打开sdk manager,更新以下3个工具:

“android sdk 工具”、“android sdk 平台工具”、“android sdk 构建工具”

重启eclipse,按“Ctrl+Shift+O”

就是这样,您的项目应该构建资源

于 2013-08-29T04:53:47.493 回答
0

有几个原因。

  1. 确保您的变量确实存在。记住“@+id/varName”
  2. 确保您没有导入 android.R.* 而不是您的项目资源
  3. 确保您的任何其他 XML 文件中没有任何错误。如果有它根本无法创建您的 R.java 文件,因此您应该有一堆错误。
于 2012-06-22T19:28:24.367 回答