Merge "Add NETWORK_AIRPLANE_MODE permission"

This commit is contained in:
TreeHugger Robot
2020-01-06 14:15:46 +00:00
committed by Android (Google) Code Review
2 changed files with 11 additions and 1 deletions

View File

@@ -3072,6 +3072,7 @@ public class ConnectivityManager {
* @hide * @hide
*/ */
@RequiresPermission(anyOf = { @RequiresPermission(anyOf = {
android.Manifest.permission.NETWORK_AIRPLANE_MODE,
android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETTINGS,
android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_SETUP_WIZARD,
android.Manifest.permission.NETWORK_STACK}) android.Manifest.permission.NETWORK_STACK})

View File

@@ -2023,6 +2023,15 @@ public class ConnectivityService extends IConnectivityManager.Stub
NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK); NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK);
} }
private void enforceAirplaneModePermission() {
enforceAnyPermissionOf(
android.Manifest.permission.NETWORK_AIRPLANE_MODE,
android.Manifest.permission.NETWORK_SETTINGS,
android.Manifest.permission.NETWORK_SETUP_WIZARD,
android.Manifest.permission.NETWORK_STACK,
NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK);
}
private boolean checkNetworkStackPermission() { private boolean checkNetworkStackPermission() {
return checkAnyPermissionOf( return checkAnyPermissionOf(
android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_STACK,
@@ -4734,7 +4743,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
@Override @Override
public void setAirplaneMode(boolean enable) { public void setAirplaneMode(boolean enable) {
enforceNetworkStackSettingsOrSetup(); enforceAirplaneModePermission();
final long ident = Binder.clearCallingIdentity(); final long ident = Binder.clearCallingIdentity();
try { try {
final ContentResolver cr = mContext.getContentResolver(); final ContentResolver cr = mContext.getContentResolver();