安卓切后台重进欢迎页的问题

今天在测试的时候发现,我点击home键,用多任务看,app是在后台运行的,通过多任务进入app也是恢复到按home键之前的状态。但是,我按home键切换到后台,再通过点击图标的方式启动,它又一次进入了欢迎页。最好的结果当然是两种方式都恢复成之前的状态,除非app被手动杀死了。

首先我的欢迎页是这样设置的:


<activity android:name=".WelcomeActivity">

        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />

</activity>

然后,通过这种方式启动MainActivity:


runnable = () -> {

startActivity(new Intent(WelcomeActivity.this, MainActivity.class));

    finish();

};

handler.postDelayed(runnable, 3000);

WelcomeActivity的启动模式是默认,MainActivity的启动模式是singleTask,只要在WelcomeActivity的onCreat生命周期里加上下面代码就可以解决问题了:


@Override

protected void onCreate(@Nullable Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

    if (!isTaskRoot()) {

        finish();

        return ;

    }

    setContentView(getLayoutId());

    initView();

}

这个时候再去测试就和想象中一样啦

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。