I am using Activity.startLockTask()
and have noticed that if I pin the screen in Activity A, I am unable to transition to Activity B. It seems like I have to startLockTask()
and then stopLockTask()
and then startLockTask()
again on Activity B.
Is there a way a better way of doing handling this so that I can pin the entire app, regardless of what Activity I am on?
This is how I pin the app:
// start lock task mode if it's not already active
ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
// ActivityManager.getLockTaskModeState api is not available in pre-M
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
if (!am.isInLockTaskMode()) {
startLockTask();
}
} else {
if (am.getLockTaskModeState() == ActivityManager.LOCK_TASK_MODE_NONE) {
startLockTask();
}
}
This is how I am stop pinning
stopLockTask()
Request to put this Activity in a mode where the user is locked to the current task.
<- emphasis onthis Activity
. I am not aware of a way where you can lock an app, and if you could wouldn't that still have the same effect, just a higher scope? – Divananswered
the question, not commented? I was merely giving you the reason why you have to use the current method from reading the docs – Divan