summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2020-04-21 18:35:44 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2020-04-21 18:35:44 +0000
commit6b74050d484bbc57cd4a58ad51fc3a6bc4976fa1 (patch)
tree883a35a525894bcc40dd222817b4849db9648ab1 /core/java/android
parent9bc5f9efc229991f7c69047c2201ca00e4074fc1 (diff)
parent5d9b2710daf1edadf1b6d5459ab129e3b1a1d4c0 (diff)
Merge "Add currentUiModeSupportsErrorDialogs() into ActivityTaskManager." into rvc-dev
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/app/ActivityTaskManager.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/core/java/android/app/ActivityTaskManager.java b/core/java/android/app/ActivityTaskManager.java
index 1b941defba42..1cc63da3db0a 100644
--- a/core/java/android/app/ActivityTaskManager.java
+++ b/core/java/android/app/ActivityTaskManager.java
@@ -23,8 +23,10 @@ import android.annotation.TestApi;
import android.compat.annotation.UnsupportedAppUsage;
import android.content.Context;
import android.content.pm.PackageManager;
+import android.content.res.Configuration;
import android.content.res.Resources;
import android.graphics.Rect;
+import android.os.Build;
import android.os.Handler;
import android.os.IBinder;
import android.os.RemoteException;
@@ -430,4 +432,14 @@ public class ActivityTaskManager {
throw e.rethrowFromSystemServer();
}
}
+
+ /** Returns whether the current UI mode supports error dialogs (ANR, crash, etc). */
+ public static boolean currentUiModeSupportsErrorDialogs(@NonNull Context context) {
+ final Configuration config = context.getResources().getConfiguration();
+ int modeType = config.uiMode & Configuration.UI_MODE_TYPE_MASK;
+ return (modeType != Configuration.UI_MODE_TYPE_CAR
+ && !(modeType == Configuration.UI_MODE_TYPE_WATCH && Build.IS_USER)
+ && modeType != Configuration.UI_MODE_TYPE_TELEVISION
+ && modeType != Configuration.UI_MODE_TYPE_VR_HEADSET);
+ }
}