|
20 | 20 | import static com.google.android.accessibility.talkback.trainingcommon.TrainingConfig.TrainingId.TRAINING_ID_ON_BOARDING_FOR_MULTIFINGER_GESTURES; |
21 | 21 | import static com.google.android.accessibility.talkback.trainingcommon.TrainingConfig.TrainingId.TRAINING_ID_ON_BOARDING_TALKBACK; |
22 | 22 |
|
| 23 | +import android.app.ActivityManager; |
23 | 24 | import android.app.NotificationManager; |
24 | 25 | import android.app.PendingIntent; |
25 | 26 | import android.content.Context; |
26 | 27 | import android.content.Intent; |
27 | 28 | import android.content.SharedPreferences; |
28 | 29 | import android.content.SharedPreferences.Editor; |
| 30 | +import android.util.Log; |
| 31 | + |
29 | 32 | import androidx.annotation.StringRes; |
30 | 33 | import androidx.annotation.VisibleForTesting; |
31 | 34 | import com.google.android.accessibility.talkback.R; |
@@ -80,7 +83,7 @@ public static boolean hasOnboardingForNewFeaturesBeenShown( |
80 | 83 | */ |
81 | 84 | public static void showOnboardingIfNecessary(Context context) { |
82 | 85 | FormFactorUtils formFactorUtils = FormFactorUtils.getInstance(); |
83 | | - if (formFactorUtils.isAndroidTv() || formFactorUtils.isAndroidWear()) { |
| 86 | + if (formFactorUtils.isAndroidTv() || formFactorUtils.isAndroidWear() || isInLockTaskMode(context)) { |
84 | 87 | return; |
85 | 88 | } |
86 | 89 |
|
@@ -120,6 +123,13 @@ public static void showOnboardingIfNecessary(Context context) { |
120 | 123 | } |
121 | 124 | } |
122 | 125 |
|
| 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 | + |
123 | 133 | private static boolean hasOnboardingForMultiFingerGestureSupportBeenShown( |
124 | 134 | SharedPreferences prefs, Context context) { |
125 | 135 | return prefs.getBoolean( |
|
0 commit comments