Merge "Revert "Introduce a new user restriction for disallowing Bluetooth.""

This commit is contained in:
ltrochtova
2016-12-01 21:20:42 +00:00
committed by Gerrit Code Review
6 changed files with 0 additions and 72 deletions

View File

@@ -29277,7 +29277,6 @@ package android.os {
field public static final java.lang.String DISALLOW_ADD_USER = "no_add_user"; field public static final java.lang.String DISALLOW_ADD_USER = "no_add_user";
field public static final java.lang.String DISALLOW_ADJUST_VOLUME = "no_adjust_volume"; field public static final java.lang.String DISALLOW_ADJUST_VOLUME = "no_adjust_volume";
field public static final java.lang.String DISALLOW_APPS_CONTROL = "no_control_apps"; field public static final java.lang.String DISALLOW_APPS_CONTROL = "no_control_apps";
field public static final java.lang.String DISALLOW_BLUETOOTH = "no_bluetooth";
field public static final java.lang.String DISALLOW_CONFIG_BLUETOOTH = "no_config_bluetooth"; field public static final java.lang.String DISALLOW_CONFIG_BLUETOOTH = "no_config_bluetooth";
field public static final java.lang.String DISALLOW_CONFIG_CELL_BROADCASTS = "no_config_cell_broadcasts"; field public static final java.lang.String DISALLOW_CONFIG_CELL_BROADCASTS = "no_config_cell_broadcasts";
field public static final java.lang.String DISALLOW_CONFIG_CREDENTIALS = "no_config_credentials"; field public static final java.lang.String DISALLOW_CONFIG_CREDENTIALS = "no_config_credentials";

View File

@@ -31804,7 +31804,6 @@ package android.os {
field public static final java.lang.String DISALLOW_ADD_USER = "no_add_user"; field public static final java.lang.String DISALLOW_ADD_USER = "no_add_user";
field public static final java.lang.String DISALLOW_ADJUST_VOLUME = "no_adjust_volume"; field public static final java.lang.String DISALLOW_ADJUST_VOLUME = "no_adjust_volume";
field public static final java.lang.String DISALLOW_APPS_CONTROL = "no_control_apps"; field public static final java.lang.String DISALLOW_APPS_CONTROL = "no_control_apps";
field public static final java.lang.String DISALLOW_BLUETOOTH = "no_bluetooth";
field public static final java.lang.String DISALLOW_CONFIG_BLUETOOTH = "no_config_bluetooth"; field public static final java.lang.String DISALLOW_CONFIG_BLUETOOTH = "no_config_bluetooth";
field public static final java.lang.String DISALLOW_CONFIG_CELL_BROADCASTS = "no_config_cell_broadcasts"; field public static final java.lang.String DISALLOW_CONFIG_CELL_BROADCASTS = "no_config_cell_broadcasts";
field public static final java.lang.String DISALLOW_CONFIG_CREDENTIALS = "no_config_credentials"; field public static final java.lang.String DISALLOW_CONFIG_CREDENTIALS = "no_config_credentials";

View File

@@ -29347,7 +29347,6 @@ package android.os {
field public static final java.lang.String DISALLOW_ADD_USER = "no_add_user"; field public static final java.lang.String DISALLOW_ADD_USER = "no_add_user";
field public static final java.lang.String DISALLOW_ADJUST_VOLUME = "no_adjust_volume"; field public static final java.lang.String DISALLOW_ADJUST_VOLUME = "no_adjust_volume";
field public static final java.lang.String DISALLOW_APPS_CONTROL = "no_control_apps"; field public static final java.lang.String DISALLOW_APPS_CONTROL = "no_control_apps";
field public static final java.lang.String DISALLOW_BLUETOOTH = "no_bluetooth";
field public static final java.lang.String DISALLOW_CONFIG_BLUETOOTH = "no_config_bluetooth"; field public static final java.lang.String DISALLOW_CONFIG_BLUETOOTH = "no_config_bluetooth";
field public static final java.lang.String DISALLOW_CONFIG_CELL_BROADCASTS = "no_config_cell_broadcasts"; field public static final java.lang.String DISALLOW_CONFIG_CELL_BROADCASTS = "no_config_cell_broadcasts";
field public static final java.lang.String DISALLOW_CONFIG_CREDENTIALS = "no_config_credentials"; field public static final java.lang.String DISALLOW_CONFIG_CREDENTIALS = "no_config_credentials";

View File

@@ -186,8 +186,6 @@ public class UserManager {
* Specifies if a user is disallowed from configuring bluetooth. * Specifies if a user is disallowed from configuring bluetooth.
* This does <em>not</em> restrict the user from turning bluetooth on or off. * This does <em>not</em> restrict the user from turning bluetooth on or off.
* The default value is <code>false</code>. * The default value is <code>false</code>.
* <p>This restriction doesn't prevent the user from using bluetooth. For disallowing usage of
* bluetooth completely on the device, use {@link #DISALLOW_BLUETOOTH}.
* <p>This restriction has no effect in a managed profile. * <p>This restriction has no effect in a managed profile.
* *
* <p>Key for user restrictions. * <p>Key for user restrictions.
@@ -198,20 +196,6 @@ public class UserManager {
*/ */
public static final String DISALLOW_CONFIG_BLUETOOTH = "no_config_bluetooth"; public static final String DISALLOW_CONFIG_BLUETOOTH = "no_config_bluetooth";
/**
* Specifies if bluetooth is disallowed on the device.
*
* <p> This restriction can only be set by the device owner and the profile owner on the
* primary user and it applies globally - i.e. it disables bluetooth on the entire device.
* <p>The default value is <code>false</code>.
* <p>Key for user restrictions.
* <p>Type: Boolean
* @see DevicePolicyManager#addUserRestriction(ComponentName, String)
* @see DevicePolicyManager#clearUserRestriction(ComponentName, String)
* @see #getUserRestrictions()
*/
public static final String DISALLOW_BLUETOOTH = "no_bluetooth";
/** /**
* Specifies if a user is disallowed from transferring files over * Specifies if a user is disallowed from transferring files over
* USB. This can only be set by device owners and profile owners on the primary user. * USB. This can only be set by device owners and profile owners on the primary user.

View File

@@ -41,7 +41,6 @@ import android.content.pm.UserInfo;
import android.database.ContentObserver; import android.database.ContentObserver;
import android.os.Binder; import android.os.Binder;
import android.os.Build; import android.os.Build;
import android.os.Bundle;
import android.os.Handler; import android.os.Handler;
import android.os.IBinder; import android.os.IBinder;
import android.os.Looper; import android.os.Looper;
@@ -52,8 +51,6 @@ import android.os.RemoteException;
import android.os.SystemClock; import android.os.SystemClock;
import android.os.UserHandle; import android.os.UserHandle;
import android.os.UserManager; import android.os.UserManager;
import android.os.UserManagerInternal;
import android.os.UserManagerInternal.UserRestrictionsListener;
import android.provider.Settings; import android.provider.Settings;
import android.provider.Settings.SettingNotFoundException; import android.provider.Settings.SettingNotFoundException;
import android.util.Slog; import android.util.Slog;
@@ -179,24 +176,6 @@ class BluetoothManagerService extends IBluetoothManager.Stub {
} }
}; };
private final UserRestrictionsListener mUserRestrictionsListener =
new UserRestrictionsListener() {
@Override
public void onUserRestrictionsChanged(int userId, Bundle newRestrictions,
Bundle prevRestrictions) {
final boolean bluetoothDisallowed =
newRestrictions.getBoolean(UserManager.DISALLOW_BLUETOOTH);
if ((mEnable || mEnableExternal) && bluetoothDisallowed) {
try {
disable(null, true);
} catch (RemoteException e) {
Slog.w(TAG, "Exception when disabling Bluetooth from UserRestrictionsListener",
e);
}
}
}
};
private final BroadcastReceiver mReceiver = new BroadcastReceiver() { private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
@@ -633,13 +612,6 @@ class BluetoothManagerService extends IBluetoothManager.Stub {
public boolean enableNoAutoConnect() public boolean enableNoAutoConnect()
{ {
if (isBluetoothDisallowed()) {
if (DBG) {
Slog.d(TAG, "enableNoAutoConnect(): not enabling - bluetooth disallowed");
}
return false;
}
mContext.enforceCallingOrSelfPermission(BLUETOOTH_ADMIN_PERM, mContext.enforceCallingOrSelfPermission(BLUETOOTH_ADMIN_PERM,
"Need BLUETOOTH ADMIN permission"); "Need BLUETOOTH ADMIN permission");
@@ -665,13 +637,6 @@ class BluetoothManagerService extends IBluetoothManager.Stub {
final int callingUid = Binder.getCallingUid(); final int callingUid = Binder.getCallingUid();
final boolean callerSystem = UserHandle.getAppId(callingUid) == Process.SYSTEM_UID; final boolean callerSystem = UserHandle.getAppId(callingUid) == Process.SYSTEM_UID;
if (isBluetoothDisallowed()) {
if (DBG) {
Slog.d(TAG,"enable(): not enabling - bluetooth disallowed");
}
return false;
}
if (!callerSystem) { if (!callerSystem) {
if (!checkIfCallerIsForegroundUser()) { if (!checkIfCallerIsForegroundUser()) {
Slog.w(TAG, "enable(): not allowed for non-active and non system user"); Slog.w(TAG, "enable(): not allowed for non-active and non system user");
@@ -876,12 +841,6 @@ class BluetoothManagerService extends IBluetoothManager.Stub {
*/ */
public void handleOnBootPhase() { public void handleOnBootPhase() {
if (DBG) Slog.d(TAG, "Bluetooth boot completed"); if (DBG) Slog.d(TAG, "Bluetooth boot completed");
UserManagerInternal userManagerInternal =
LocalServices.getService(UserManagerInternal.class);
userManagerInternal.addUserRestrictionsListener(mUserRestrictionsListener);
if (isBluetoothDisallowed()) {
return;
}
if (mEnableExternal && isBluetoothPersistedStateOnBluetooth()) { if (mEnableExternal && isBluetoothPersistedStateOnBluetooth()) {
if (DBG) Slog.d(TAG, "Auto-enabling Bluetooth."); if (DBG) Slog.d(TAG, "Auto-enabling Bluetooth.");
sendEnableMsg(mQuietEnableExternal); sendEnableMsg(mQuietEnableExternal);
@@ -1924,16 +1883,6 @@ class BluetoothManagerService extends IBluetoothManager.Stub {
} }
} }
private boolean isBluetoothDisallowed() {
long callingIdentity = Binder.clearCallingIdentity();
try {
return mContext.getSystemService(UserManager.class)
.hasUserRestriction(UserManager.DISALLOW_BLUETOOTH, UserHandle.SYSTEM);
} finally {
Binder.restoreCallingIdentity(callingIdentity);
}
}
@Override @Override
public void dump(FileDescriptor fd, PrintWriter writer, String[] args) { public void dump(FileDescriptor fd, PrintWriter writer, String[] args) {
mContext.enforceCallingOrSelfPermission(android.Manifest.permission.DUMP, TAG); mContext.enforceCallingOrSelfPermission(android.Manifest.permission.DUMP, TAG);

View File

@@ -73,7 +73,6 @@ public class UserRestrictionsUtils {
UserManager.DISALLOW_SHARE_LOCATION, UserManager.DISALLOW_SHARE_LOCATION,
UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES, UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES,
UserManager.DISALLOW_CONFIG_BLUETOOTH, UserManager.DISALLOW_CONFIG_BLUETOOTH,
UserManager.DISALLOW_BLUETOOTH,
UserManager.DISALLOW_USB_FILE_TRANSFER, UserManager.DISALLOW_USB_FILE_TRANSFER,
UserManager.DISALLOW_CONFIG_CREDENTIALS, UserManager.DISALLOW_CONFIG_CREDENTIALS,
UserManager.DISALLOW_REMOVE_USER, UserManager.DISALLOW_REMOVE_USER,
@@ -118,7 +117,6 @@ public class UserRestrictionsUtils {
* User restrictions that can not be set by profile owners. * User restrictions that can not be set by profile owners.
*/ */
private static final Set<String> DEVICE_OWNER_ONLY_RESTRICTIONS = Sets.newArraySet( private static final Set<String> DEVICE_OWNER_ONLY_RESTRICTIONS = Sets.newArraySet(
UserManager.DISALLOW_BLUETOOTH,
UserManager.DISALLOW_USB_FILE_TRANSFER, UserManager.DISALLOW_USB_FILE_TRANSFER,
UserManager.DISALLOW_CONFIG_TETHERING, UserManager.DISALLOW_CONFIG_TETHERING,
UserManager.DISALLOW_NETWORK_RESET, UserManager.DISALLOW_NETWORK_RESET,