diff options
| author | 2024-05-21 03:59:34 +0000 | |
|---|---|---|
| committer | 2024-05-21 03:59:34 +0000 | |
| commit | 6d77b32c25551b70ac8a5d6d613630f1138b4c82 (patch) | |
| tree | 0cb0b0035d3c46b0333cc2df7ee6cbd465d0e640 | |
| parent | b1c0ac14985b53c741bd3866bfd7df41b0f7f0c1 (diff) | |
| parent | 2ea770c68055479dce8664fe871ad1641a09be5f (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.java | 21 |
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); |