summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Kiran S <krns@google.com> 2024-05-21 03:59:34 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2024-05-21 03:59:34 +0000
commit6d77b32c25551b70ac8a5d6d613630f1138b4c82 (patch)
tree0cb0b0035d3c46b0333cc2df7ee6cbd465d0e640
parentb1c0ac14985b53c741bd3866bfd7df41b0f7f0c1 (diff)
parent2ea770c68055479dce8664fe871ad1641a09be5f (diff)
Merge "Restrict USB poups while setup is in progress" into tm-dev am: 2ea770c680
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/27318647 Change-Id: Ic3cfaa371b2b9533d9e51fc3f0b7ca0dfcf919c8 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--services/usb/java/com/android/server/usb/UsbProfileGroupSettingsManager.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/services/usb/java/com/android/server/usb/UsbProfileGroupSettingsManager.java b/services/usb/java/com/android/server/usb/UsbProfileGroupSettingsManager.java
index bb0c4e903ff8..956740594c72 100644
--- a/services/usb/java/com/android/server/usb/UsbProfileGroupSettingsManager.java
+++ b/services/usb/java/com/android/server/usb/UsbProfileGroupSettingsManager.java
@@ -16,6 +16,8 @@
package com.android.server.usb;
+import static android.provider.Settings.Secure.USER_SETUP_COMPLETE;
+
import static com.android.internal.app.IntentForwarderActivity.FORWARD_INTENT_TO_MANAGED_PROFILE;
import android.annotation.NonNull;
@@ -42,6 +44,7 @@ import android.os.AsyncTask;
import android.os.Environment;
import android.os.UserHandle;
import android.os.UserManager;
+import android.provider.Settings;
import android.service.usb.UsbProfileGroupSettingsManagerProto;
import android.service.usb.UsbSettingsAccessoryPreferenceProto;
import android.service.usb.UsbSettingsDevicePreferenceProto;
@@ -913,10 +916,28 @@ class UsbProfileGroupSettingsManager {
return;
}
+ if (shouldRestrictOverlayActivities()) {
+ return;
+ }
+
// Start activity with registered intent
resolveActivity(intent, matches, defaultActivity, device, null);
}
+ private boolean shouldRestrictOverlayActivities() {
+ if (Settings.Secure.getIntForUser(
+ mContext.getContentResolver(),
+ USER_SETUP_COMPLETE,
+ /* defaultValue= */ 1,
+ UserHandle.CURRENT.getIdentifier())
+ == 0) {
+ Slog.d(TAG, "restricting usb overlay activities as setup is not complete");
+ return true;
+ }
+
+ return false;
+ }
+
public void deviceAttachedForFixedHandler(UsbDevice device, ComponentName component) {
final Intent intent = createDeviceAttachedIntent(device);