[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
This commit is contained in:
Zoey Chen
2021-08-10 18:49:56 +08:00
parent 928618e62a
commit c5c72dc43e
2 changed files with 5 additions and 2 deletions

View File

@@ -307,7 +307,8 @@ public class InternetDialog extends SystemUIDialog implements
private void setOnClickListener() { private void setOnClickListener() {
mMobileNetworkLayout.setOnClickListener(v -> { mMobileNetworkLayout.setOnClickListener(v -> {
if (mInternetDialogController.isMobileDataEnabled()) { if (mInternetDialogController.isMobileDataEnabled()
&& !mInternetDialogController.isDeviceLocked()) {
if (!mInternetDialogController.activeNetworkIsCellular()) { if (!mInternetDialogController.activeNetworkIsCellular()) {
mInternetDialogController.connectCarrierNetwork(); mInternetDialogController.connectCarrierNetwork();
} }

View File

@@ -68,6 +68,7 @@ public class AccessPointControllerImpl
private final ArrayList<AccessPointCallback> mCallbacks = new ArrayList<AccessPointCallback>(); private final ArrayList<AccessPointCallback> mCallbacks = new ArrayList<AccessPointCallback>();
private final UserManager mUserManager; private final UserManager mUserManager;
private final UserTracker mUserTracker;
private final Executor mMainExecutor; private final Executor mMainExecutor;
private @Nullable WifiPickerTracker mWifiPickerTracker; private @Nullable WifiPickerTracker mWifiPickerTracker;
@@ -84,6 +85,7 @@ public class AccessPointControllerImpl
WifiPickerTrackerFactory wifiPickerTrackerFactory WifiPickerTrackerFactory wifiPickerTrackerFactory
) { ) {
mUserManager = userManager; mUserManager = userManager;
mUserTracker = userTracker;
mCurrentUser = userTracker.getUserId(); mCurrentUser = userTracker.getUserId();
mMainExecutor = mainExecutor; mMainExecutor = mainExecutor;
mWifiPickerTrackerFactory = wifiPickerTrackerFactory; mWifiPickerTrackerFactory = wifiPickerTrackerFactory;
@@ -120,7 +122,7 @@ public class AccessPointControllerImpl
public boolean canConfigMobileData() { public boolean canConfigMobileData() {
return !mUserManager.hasUserRestriction(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS, return !mUserManager.hasUserRestriction(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS,
UserHandle.of(mCurrentUser)); UserHandle.of(mCurrentUser)) || mUserTracker.getUserInfo().isAdmin();
} }
public void onUserSwitched(int newUserId) { public void onUserSwitched(int newUserId) {