Skip to content

Commit 80aca90

Browse files
mtilbrook-devPatrykMis
authored andcommitted
Do not show onboarding when lock task mode is enabled
1 parent 0793167 commit 80aca90

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

talkback/src/main/java/com/google/android/accessibility/talkback/training/OnboardingInitiator.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,15 @@
2020
import static com.google.android.accessibility.talkback.trainingcommon.TrainingConfig.TrainingId.TRAINING_ID_ON_BOARDING_TALKBACK;
2121
import static com.google.android.accessibility.talkback.trainingcommon.TrainingConfig.TrainingId.TRAINING_ID_ON_BOARDING_TALKBACK_WITHOUT_DESCRIBE_IMAGE;
2222

23+
import android.app.ActivityManager;
2324
import android.app.NotificationManager;
2425
import android.app.PendingIntent;
2526
import android.content.Context;
2627
import android.content.Intent;
2728
import android.content.SharedPreferences;
2829
import android.content.SharedPreferences.Editor;
30+
import android.util.Log;
31+
2932
import androidx.annotation.StringRes;
3033
import androidx.annotation.VisibleForTesting;
3134
import com.google.android.accessibility.talkback.R;
@@ -78,7 +81,7 @@ public static boolean hasOnboardingForNewFeaturesBeenShown(
7881
*/
7982
public static void showOnboardingIfNecessary(Context context) {
8083
FormFactorUtils formFactorUtils = FormFactorUtils.getInstance();
81-
if (formFactorUtils.isAndroidTv() || formFactorUtils.isAndroidWear()) {
84+
if (formFactorUtils.isAndroidTv() || formFactorUtils.isAndroidWear() || isInLockTaskMode(context)) {
8285
return;
8386
}
8487

@@ -118,6 +121,13 @@ public static void showOnboardingIfNecessary(Context context) {
118121
}
119122
}
120123

124+
/** Typically Kiosk device use Lock Task mode. If enabled assume the device is a Kiosk device */
125+
private static boolean isInLockTaskMode(Context context) {
126+
ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
127+
Log.i("DEBUG", "activityManager.getLockTaskModeState() " + activityManager.getLockTaskModeState());
128+
return activityManager.getLockTaskModeState() != ActivityManager.LOCK_TASK_MODE_NONE;
129+
}
130+
121131
private static boolean hasOnboardingForMultiFingerGestureSupportBeenShown(
122132
SharedPreferences prefs, Context context) {
123133
return prefs.getBoolean(

0 commit comments

Comments
 (0)