- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
在 Gradle 和 Run/Debug Configurations -> Android Tests -> MyInstrumentedTest -> General -> Specific instrumentation runner 中设置
和扩展 testInstrumentationRunner "com.example.theapp.utils.CustomAndroidJUnitRunner"
之后(可选)AndroidJUnitRunner
:
import android.app.Application;
import android.content.Context;
import android.support.test.runner.AndroidJUnitRunner;
public class CustomAndroidJUnitRunner extends AndroidJUnitRunner {
@Override
public Application newApplication(ClassLoader cl, String className, Context context) throws InstantiationException, IllegalAccessException, ClassNotFoundException {
return super.newApplication(cl, className, context);
}
@Override
public void callApplicationOnCreate(Application app) {
super.callApplicationOnCreate(app);
}
}
我在 newApplication
和 callApplicationOnCreate
中设置了 BP 并看到调用了 callApplicationOnCreate
,但没有调用 newApplication
。可能是什么问题?
最佳答案
我认为 newApplication()
没有被调用,因为断点没有被击中,但似乎在调试器有机会附加之前调用了该方法。
如果需要调试newApplication()
方法,我推荐添加Debug.waitForDebugger()
;在 Runner 构造函数中或在断点之前的任何时间。否则使用一些其他标志来确定该方法是否被调用(即不依赖调试器和断点)。
关于android - callApplicationOnCreate 被调用但不是 newApplication(扩展 AndroidJUnitRunner),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38128692/
我正在分发一种产品的两个不同版本(例如精简版和专业版)。如果我无法以动态方式更改占位符 NewApplication,我不知道如何使用相同的 MainMenu.xib。我想使用 bundle 名称而不
在 Gradle 和 Run/Debug Configurations -> Android Tests -> MyInstrumentedTest -> General -> Specific in
问题 我只是想将自定义 AndroidJUnitRunner 类从 Java 转换为 Kotlin。 代码 CustomTestRunner.java public class CustomTestR
我是一名优秀的程序员,十分优秀!