java - 在 mypackage.R 中找不到 Android gradle src/androidTest/res/layout/mylayout.xml

标签 java android xml r.java-file

我在 Android Studio 中使用 gradle 编写我的单元测试。我的测试位于:

src/androidTest/java

这很好用。现在在我的测试中,我想访问定义在以下位置的资源:

src/androidTest/res

具体来说,我想获取 src/androidTest/res/layout/mylayout.xml。问题是我的测试包的 R 类或与此相关的任何包都定义了 mylayout。

我在我的 build.gradle 上做了这个,但没有什么不同:

sourceSets {
    androidTest.resources.srcDirs = ['src/res']
}

如何为仅对 androidTest 可见的 androidTest 类提供资源?

最佳答案

对我来说,解决方案是将源文件放在 src/androidTest/java 中,将资源文件放在 src/androidTest/res 中。这些是标准位置,因此您无需在 gradle.build 中编辑任何内容。

另外,重命名您的 R 导入自

import com.mycompany.myappname.R;

import com.mycompany.myappname.test.R;

来源:Configuring res srcDirs for androidTest sourceSet

关于java - 在 mypackage.R 中找不到 Android gradle src/androidTest/res/layout/mylayout.xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23643189/

相关文章:

java - 这段代码是否可以从数组中打印出随机字符串?

java - 在java中打印字符串的前半部分

Android Studio 翻译编辑器不存在

php - WordPress 主题正在消除我的 PayPal 购买链接的符号和之后的所有文本

基于 Java 的工作流解决方案

java - Java 代码主体中的 URL 不会引发编译错误

java - 应用程序关闭时, Activity 的预期服务停止

java - 从另一个类覆盖 Activity 对象的 onActivityResult

android - 从重定向的 URL 中检索位图

python - 在python中创建xml文件时如何插入制表符而不是空格