在我的Android应用中的某个时刻,我需要清除当前任务并开始新的活动。
我通常通过在提供给Context.startActivity()的意图中使用FLAG_ACTIVITY_NEW_TASK和FLAG_ACTIVITY_CLEAR_TASK标志来做到这一点。
但是我注意到固定应用程序(即lock task mode已启用)后,它不起作用。
很明显,我可以在清除任务之前先停止锁定任务模式,然后再重新启动它,但是由于它会重新显示与应用程序固定相关的弹出式窗口和举杯,这给用户带来不好的体验。
启用锁定任务模式后,是否可以通过某种方式在清除任务中启动活动?
答案 0 :(得分:0)
从文献来看,只有一种方法可以做到这一点。
如果一个活动先前称为startLockTask(),则该活动 可以调用Activity.stopLockTask()来停止锁定任务模式。这个方法 仅适用于开始锁定任务模式的活动。
OR
您需要通过DevicePolicyManager.setLockTaskPackages()停止锁定任务,才能从白名单中删除该应用。
答案 1 :(得分:0)
改进业务逻辑,以使其无需启动新的Activity
-
因为问题是:在给定的情况下,为什么甚至需要这样做?
在大多数情况下,替换Fragment
就足够了,除非切换Locale
。
如果只有启动锁定任务的Activity
可以将其解锁-
仍然可以通过实现interface
来做到这一点
(显然,我假设此Activity
仍在运行)。