Skip to content

Commit bd2bc6e

Browse files
mtilbrook-devPatrykMis
authored andcommitted
Do not show onboarding when lock task mode is enabled
1 parent 83f984d commit bd2bc6e

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_FOR_MULTIFINGER_GESTURES;
2121
import static com.google.android.accessibility.talkback.trainingcommon.TrainingConfig.TrainingId.TRAINING_ID_ON_BOARDING_TALKBACK;
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;
@@ -80,7 +83,7 @@ public static boolean hasOnboardingForNewFeaturesBeenShown(
8083
*/
8184
public static void showOnboardingIfNecessary(Context context) {
8285
FormFactorUtils formFactorUtils = FormFactorUtils.getInstance();
83-
if (formFactorUtils.isAndroidTv() || formFactorUtils.isAndroidWear()) {
86+
if (formFactorUtils.isAndroidTv() || formFactorUtils.isAndroidWear() || isInLockTaskMode(context)) {
8487
return;
8588
}
8689

@@ -120,6 +123,13 @@ public static void showOnboardingIfNecessary(Context context) {
120123
}
121124
}
122125

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

0 commit comments

Comments
 (0)