Android填坑:Home键后无法还原到当前页面
程序员文章站
2022-05-16 11:22:07
...
Android填坑:Home键后无法还原到当前页面
问题描述
安装APP成功后,弹出“完成”和“打开”选择页,直接“打开”APP吊起其他页面,使用Home键回到桌面,通过APP图标再次打开APP,发现直接回到了MainActivity,并没有还原之前的页面,且通过返回键却可以回到之前页面。
原因分析
通过系统安装程序安装成功的APP(如:从应用商城下载安装),如果选择直接打开的话,走的是该程序启动Activity的流程,产生的Activity栈是属于该程序的;而直接通过桌面图标启动APP,则走的是APP自己的启动流程,该过程中无法找到安装程序所产生的Activity栈,所以APP会重新启动MainActivity。
强调: 以上描述可能不是很清晰,大神们可以指点一二!
解决方案
在MainActivity(这里的MainActivity指代第一个启动的Activity)中加入以下代码:
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (!isTaskRoot()) {
Intent intent = getIntent();
if (intent != null && Intent.ACTION_MAIN.equals(intent.getAction()) && intent.hasCategory(Intent.CATEGORY_LAUNCHER)) {
finish();
return;
}
}
}
复制代码
上一篇: Android 复制到剪切板功能
下一篇: 复制内容到剪切板