launchMode“ singleInstance”在android 9上表现奇怪

问题描述

我有两个活动 CallActivity MainActivity CallActivity launchMode设置为singleInstance,并且 MainActivity 没有设置任何launchMode。通过通话活动,我将结合使用Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_TASK_ON_HOME来启动MainActivity。

预期的行为是:

MainActivity 中,我要在新任务中启动 CallActivity ,并在按回时,我想返回到 MainActivity 的现有实例。 >而无需停止 CallActivity 。每当通话运行时,用户都单击按钮,将现有的CallActivity任务置于前台,并且由于 MainActivity 处于其自己的任务中,因此应在回按下事件时返回主页。

我的手机上观察到的行为是:

CallActivity 称为 C ,将 MainActivity 称为 M ,任务状态如下>

  1. 打开应用程序[M]
  2. 启动C,[M,C]
  3. 从C,[M,C,M]上按回

根据Android documentationsingleInstance应该在新任务中启动活动,并且它应该是该任务中存在的唯一活动。但是由于某种原因,我无法在手机上正确获得此行为。它可以按预期在其他设备上运行。

我的手机当前正在android 9版本上运行。我在运行Nougat,Oreo,Q(10)的手机上尝试了apk,并且运行良好。

是与Android有关的bug,还是需要结合使用Intent标志来达到结果?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...