From 0cf7dc970fe18a528cd5a2d397522c26296e53e9 Mon Sep 17 00:00:00 2001 From: Zoey Chen Date: Tue, 10 Aug 2021 18:49:56 +0800 Subject: [PATCH] [Provider Model] 1.Only admin can config mobile data 2.Do not connect to mobile data when device is locked Bug: 195901667 Bug: 196020201 Test: manual Change-Id: Id0d372cfe4e71f323ae3f3136acfb9857ad1c539 Merged-In: Id0d372cfe4e71f323ae3f3136acfb9857ad1c539 (cherry picked from commit c5c72dc43e768f9f95874e04b3b4f8c97b001f93) --- .../com/android/systemui/qs/tiles/dialog/InternetDialog.java | 3 ++- .../systemui/statusbar/policy/AccessPointControllerImpl.java | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java index 868ae8eb3a2ac..e1e0ba7a8d038 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java @@ -307,7 +307,8 @@ public class InternetDialog extends SystemUIDialog implements private void setOnClickListener() { mMobileNetworkLayout.setOnClickListener(v -> { - if (mInternetDialogController.isMobileDataEnabled()) { + if (mInternetDialogController.isMobileDataEnabled() + && !mInternetDialogController.isDeviceLocked()) { if (!mInternetDialogController.activeNetworkIsCellular()) { mInternetDialogController.connectCarrierNetwork(); } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/AccessPointControllerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/AccessPointControllerImpl.java index 4ca1f6004d90d..2ab0e5903323f 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/AccessPointControllerImpl.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/AccessPointControllerImpl.java @@ -69,6 +69,7 @@ public class AccessPointControllerImpl private final ArrayList mCallbacks = new ArrayList(); private final UserManager mUserManager; + private final UserTracker mUserTracker; private final Executor mMainExecutor; private @Nullable WifiPickerTracker mWifiPickerTracker; @@ -85,6 +86,7 @@ public class AccessPointControllerImpl WifiPickerTrackerFactory wifiPickerTrackerFactory ) { mUserManager = userManager; + mUserTracker = userTracker; mCurrentUser = userTracker.getUserId(); mMainExecutor = mainExecutor; mWifiPickerTrackerFactory = wifiPickerTrackerFactory; @@ -121,7 +123,7 @@ public class AccessPointControllerImpl public boolean canConfigMobileData() { return !mUserManager.hasUserRestriction(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS, - UserHandle.of(mCurrentUser)); + UserHandle.of(mCurrentUser)) || mUserTracker.getUserInfo().isAdmin(); } public void onUserSwitched(int newUserId) {