主流的网上解决方案都是跟Activity的启动模式不是singleTop和Standard有关,但是在Standard模式下还是碰到了这个问题,经过调试发现问题出在:
@Override
public void onBackPressed() {
setCloseResult();
finish();
super.onBackPressed();
}
private void setCloseResult(){
Intent intent = new Intent();
intent.putExtra("result", appleAuthCode);
setResult(RESULT_OK, intent);
}
将BackPressed()回调的super方法,写在finish()之后,就好使了。 super.onBackPressed()方法如果写在setResult之前也会导致这个bug

本文介绍了一个在Android开发中关于返回键处理的常见问题及其解决方案。问题出现在覆盖onBackPressed方法时,super.onBackPressed调用的位置不当导致的问题。通过调整setResult与finish及super.onBackPressed调用的顺序,可以有效避免该问题。

671

被折叠的 条评论
为什么被折叠?



