android - 来自 ApplicationProvider.getApplicationContext 的错误应用程序实例
问题描述
我Application
通过创建一个子类并将这个子类的完全限定名称指定为标签中的android:name
属性来提供我自己的实现:AndroidManifest.xml
<application>
<application
android:name=".GeniuzApp"
...
运行这个 Android 应用程序,我可以得到正确的Application
对象,Activity
例如:val app = application as GeniuzApp
然而,当我调用ApplicationProvider.getApplicationContext
配置为 的单元测试时@RunWith(RobolectricTestRunner::class)
,我没有得到我的Application
子类的实例(即GeniuzApp
)。
我是否需要在单元测试中提供任何其他内容才能获得正确的应用程序实例?
解决方案
我缺少以下内容build.gradle
:
android {
testOptions {
unitTests {
includeAndroidResources = true
}
}
}
推荐阅读
- python - Django 模板 - 使用字符串从表单呈现字段
- java - 执行失败 Twilio SMS (Java)
- ssh - 如何使用相同的算法创建两个 SSH 密钥?
- html - 背景滤镜模糊不会覆盖在下面的所有元素上
- python-3.x - 如何使用python创建具有每个点的RGB值的NumPy图像数组?
- c - 指向数组的指针、malloc 和越界访问
- javascript - 循环遍历javascript数组不会产生正确的结果
- javascript - 如何在js中打印部分sql错误信息
- c - 可以在信号量内调用 wait_event 吗?
- recursion - 使用简单递归从未排序列表中构建二叉搜索树