两个不同项目的R.java的资源ID冲突

时间:2010-10-18 15:22:47

标签: java android resources

我有两个不同的项目A& B.项目内部A我链接项目B的源代码,因此项目A的活动可以从项目B开始活动。我正在使用Eclipse Galileo。

问题是,当我想编辑活动B中视图的值时,两个项目中的资源ID都有一些冲突。因此,当我在活动B中调用findViewById()时,我从活动A获得了一个视图。

我在项目A中的AndroidManifest中声明了活动B.我甚至尝试将活动B作为应用程序的入口点开始,但它根本没有显示任何内容。就像findViewById尝试搜索项目A的视图一样,虽然我已经正确指定了包名。

findViewById(com.my.company.projectB.R.id.someView);

有没有人知道发生了什么?我真的很感激任何帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

我发现了问题。它位于我的项目A的清单文件中。我不应该在那里声明活动B.所以基本上说,为了从另一个应用程序(项目B)正确调用一个活动,需要做的事情是:

1)。通过运行或调试它来安装应用程序B(当然!)。

2)。在自己的项目中正确声明了活动B的intent-filter。无需在项目中声明它(这是我的错误)。

3)。使用intent-filter中指定的意图启动活动。

在这里发布答案以防其他人遇到与我相同的问题:)