【发布时间】:2014-03-19 17:15:09
【问题描述】:
必须处理android任务和启动模式(标志)是一场噩梦。
需要完成这个场景:
在新任务中从后台服务启动属于 App[A] 的 Activity[1]。 当用户返回 [返回] - 完成活动 [1] 并恢复之前在前台的任何应用程序!
如果 App[A] 处于活动状态并且正在运行 - 没有问题,[beck] 关闭 Activity[1] 并恢复 App[A]。 但是,如果任何其他 App[B] 在启动 Activity[1] 时处于前台(即使使用新任务),所有 App[A] 任务和堆栈都会超过 App[B] 并破坏 [返回] 导航。 我想从 Activity[1] 导航回来后会看到 App[B]。
尝试了几种标志组合,但都没有达到所需的效果。
仅适用于 App[A] 运行时:
Intent.AddFlags(ActivityFlags.NewTask);
Intent.AddFlags(ActivityFlags.ReorderToFront);
Intent.AddFlags(ActivityFlags.ExcludeFromRecents);
仅适用于 App[B] 运行时(清除 App[A] backstack):
Intent.AddFlags(ActivityFlags.NewTask);
Intent.AddFlags(ActivityFlags.ClearTask);
Intent.AddFlags(ActivityFlags.ExcludeFromRecents);
如何将 Intent 配置为仅启动一个独立的 Activity[1] 并返回以恢复之前屏幕上的内容?
【问题讨论】:
标签: android android-activity task back-stack