假设您有两个活动:A(启动器)和B。活动A有一个按钮,当您按下它时,活动B将启动以获得结果。当用户按下返回键时,在onActivityResult()
活动A的方法中,调用该方法recreate()
。发生的情况是活动A被重新创建、恢复并自动暂停(也就是说,该onPause()
方法在 之后调用onResume()
,但活动是完全可见的,当然)。这发生在模拟器上,api 级别为 16、17、18、19、21、22、23。这不会发生在真正的 api 23 智能手机上。您可以在里面放一个标志onActivityResult()
并调用该recreate()
方法onResume()
并得到相同的结果。这是android模拟器的错误还是我错过了什么?gradle文件的一部分:
compileSdkVersion 27
defaultConfig {
applicationId "com.test.test2"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
更新
我看到其他人发现了同样的奇怪行为:stackoverflow question。我想我已经添加了更多信息。