我有两个Android应用程序,这里是它们所在的软件包。
com.android.app.sample1
com.android.app.sample2
如你所知,每个应用程序都有自己的res文件夹,如果我想为sample1获取一些字符串,我必须编写com.android.app/sample1.R.string.some_string
,如果是sample2 com.android.app/sample2.R.string.some_string
现在如果我有一些其他项目包< / p>
com.android.app.testingsamples
我的sample1\src
和sample2\src
作为资源链接到 testingsamples ,但是当我将src
链接到 testingsamples 出现“ 无法找到资源R ”等错误。
当我将应用程序作为资源链接到 testingsamples 时,我尝试将我的所有应用程序包更改为相同的com.android.app
,一切正常{ {1}}与R
中的所有人相同,但这不是问题,因为当我尝试安装 sample1 和 时sample2 分别安装一个,因为它们具有相同的包名。
对于R将位于同一地点的所有项目,我有什么想法可以做到这一点吗?
答案 0 :(得分:1)
您的src文件夹中的软件包名称与应用程序的Manifest.xml中定义的软件包名称之间存在差异。通常,当您在Eclipse中创建一个新项目时,它们是相同的,但它们不必。
您的所有项目都可以在其src文件夹中使用相同的包结构。但是为了向Android展示这两个应用程序sample1和sample2是不同的应用程序,它们在清单文件中的包名称必须不同。
更新
很抱歉,我意识到这并没有解决问题,因为R class是在den manifest中定义的包名下生成的。
答案 1 :(得分:0)
和我的sample1 \ src和sample2 \ src作为资源链接到 testingsamples,但是当我将src链接到testingsamples时出现错误 喜欢“无法找到资源R”。
这是因为为R生成的java文件位于sampleX \ bin中。 您可以尝试将这些添加到您的路径中以解决您的问题。
如果sample1和sample 2不是单独的应用程序,更好的方法是制作sample1和sample2 android库并将它们链接到你的testingsamples。因此,样本1和样本2 R都融合到测试样本中。