当我将项目更新为 androidx 时,出现以下错误
我也搜索过但找不到我的答案,尽管项目运行良好
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
@Test
public void useAppContext() {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getTargetContext();
assertEquals("com.example.villagefoodsecrets", appContext.getPackageName());
}
}
Run Code Online (Sandbox Code Playgroud)
此时,@RunWith(AndroidJUnit4.class)表明它已被弃用。
和Context appContext = InstrumentationRegistry.getTargetContext();
.getTargetContext; 红色格式看起来不存在。那么我能在这里做什么——我应该忽略这个吗?
Zai*_*ain 20
要使用未弃用的类,请在 build.gradle(应用程序模块级别)中添加以下内容
androidTestImplementation ‘androidx.test.ext:junit:1.1.1’
Run Code Online (Sandbox Code Playgroud)
然后在 ExampleInstrumentedTest 类中替换以下已弃用的导入
import androidx.test.InstrumentationRegistry;
import androidx.test.runner.AndroidJUnit4;
Run Code Online (Sandbox Code Playgroud)
和
import androidx.test.platform.app.InstrumentationRegistry ;
import androidx.test.ext.junit.runners.AndroidJUnit4;
Run Code Online (Sandbox Code Playgroud)
并在下面获得上下文使用:
用于 Java
Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
Run Code Online (Sandbox Code Playgroud)
对于科特林
val appContext = InstrumentationRegistry.getInstrumentation().targetContext
Run Code Online (Sandbox Code Playgroud)
希望这对你有帮助
| 归档时间: |
|
| 查看次数: |
1812 次 |
| 最近记录: |