Android 启动页重复创建问题
2021-02-06 本文已影响0人
一个不安分的Android开发
最近开发中遇到一个问题,复现流程大概是这样:
启动页 -》首页 -》退到后台,休眠一段时间 -》重新点击APP,进入到首页
启动页跳转到首页的时候会直接销毁
这个时候看日志发现了一个奇怪的地方,MainActivity 竟然有两个。然后加了一些辅助日志后发现,第二个 MainActivity 是启动页跳转过来的,
也就是说APP休眠唤醒后,虽然直接显示在首页,但是会重新打开启动页,从而导致首页重复创建。
但奇怪的是,我这个时候点击返回键,并不会像预想的一样回退到另一个 MainActivity,百思不得其解,后面使用下面的代码先规避了。
//在启动页的onCreate()方法中加入下面这个代码
//如果不是根任务,直接关闭,避免MainActivity重复创建的问题
if (!isTaskRoot()) {
Log.i(TAG, "SplashActivity not isTaskRoot ");
finish();
return;
}
有哪位朋友知道原因的也请不吝赐教。