在测试中,我使用逻辑启动了一个活动
val startIntent = Intent(Intent.ACTION_MAIN).apply {
setClassName(InstrumentationRegistry.getTargetContext().packageName, MyActivity::class.java.name)
flags = Intent.FLAG_ACTIVITY_NEW_TASK
}
InstrumentationRegistry.getInstrumentation().startActivitySync(startIntent)
当我定位到API 27时,它运行良好,但是现在我定位到API 28,它失败了,但出现了
android.util.AndroidRuntimeException:从Activity上下文外部调用startActivity()需要FLAG_ACTIVITY_NEW_TASK标志。这真的是您想要的吗?
我知道API 28使用上述标志进行了更改,以强制执行,但是我非常清楚地指定了该标志
答案 0 :(得分:0)
请尝试以下操作:
addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)