diff options
author | Ivan Podogov <ginkage@google.com> | 2017-01-03 11:10:59 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-01-03 11:10:59 +0000 |
commit | 21786cba4db7a24245f1e85c068e0c4c277cb546 (patch) | |
tree | 738fadeebbca9d7a1de1bc8803eb9717c4b3fec8 | |
parent | f07b61edc5f3443e5719b2ff1084ab1aee07d029 (diff) | |
parent | 054ddcd931164dcb6ce42a5a981748f89e6744e1 (diff) | |
download | android_frameworks_opt_net_wifi-21786cba4db7a24245f1e85c068e0c4c277cb546.tar.gz android_frameworks_opt_net_wifi-21786cba4db7a24245f1e85c068e0c4c277cb546.tar.bz2 android_frameworks_opt_net_wifi-21786cba4db7a24245f1e85c068e0c4c277cb546.zip |
In permission review mode, always request user's consent to toggle WiFi.
am: 054ddcd931
Change-Id: Id40da72090217210ac0ffbc1029475a8ef0ee2da
-rw-r--r-- | service/java/com/android/server/wifi/WifiServiceImpl.java | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/service/java/com/android/server/wifi/WifiServiceImpl.java b/service/java/com/android/server/wifi/WifiServiceImpl.java index 32491e7e8..ae42db0de 100644 --- a/service/java/com/android/server/wifi/WifiServiceImpl.java +++ b/service/java/com/android/server/wifi/WifiServiceImpl.java @@ -587,14 +587,14 @@ public class WifiServiceImpl extends IWifiManager.Stub { if (enable) { if (wiFiEnabledState == WifiManager.WIFI_STATE_DISABLING || wiFiEnabledState == WifiManager.WIFI_STATE_DISABLED) { - if (startConsentUiIfNeeded(packageName, Binder.getCallingUid(), + if (startConsentUi(packageName, Binder.getCallingUid(), WifiManager.ACTION_REQUEST_ENABLE)) { return true; } } } else if (wiFiEnabledState == WifiManager.WIFI_STATE_ENABLING || wiFiEnabledState == WifiManager.WIFI_STATE_ENABLED) { - if (startConsentUiIfNeeded(packageName, Binder.getCallingUid(), + if (startConsentUi(packageName, Binder.getCallingUid(), WifiManager.ACTION_REQUEST_DISABLE)) { return true; } @@ -1433,7 +1433,7 @@ public class WifiServiceImpl extends IWifiManager.Stub { } }; - private boolean startConsentUiIfNeeded(String packageName, + private boolean startConsentUi(String packageName, int callingUid, String intentAction) throws RemoteException { if (UserHandle.getAppId(callingUid) == Process.SYSTEM_UID) { return false; @@ -1449,19 +1449,16 @@ public class WifiServiceImpl extends IWifiManager.Stub { + " not in uid " + callingUid); } - // Legacy apps in permission review mode trigger a user prompt - if (applicationInfo.targetSdkVersion < Build.VERSION_CODES.M) { - Intent intent = new Intent(intentAction); - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK - | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); - intent.putExtra(Intent.EXTRA_PACKAGE_NAME, packageName); - mContext.startActivity(intent); - return true; - } + // Permission review mode, trigger a user prompt + Intent intent = new Intent(intentAction); + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK + | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); + intent.putExtra(Intent.EXTRA_PACKAGE_NAME, packageName); + mContext.startActivity(intent); + return true; } catch (PackageManager.NameNotFoundException e) { throw new RemoteException(e.getMessage()); } - return false; } /** |