Merge changes from topic "adbwifi-base" am: 458a9a2561 am: bdf898ab9f
Change-Id: I2c404b54c4f76507103cba3551f55b8cdea142b5
This commit is contained in:
@@ -9781,10 +9781,16 @@ public final class Settings {
|
||||
private static final Validator BUGREPORT_IN_POWER_MENU_VALIDATOR = BOOLEAN_VALIDATOR;
|
||||
|
||||
/**
|
||||
* Whether ADB is enabled.
|
||||
* Whether ADB over USB is enabled.
|
||||
*/
|
||||
public static final String ADB_ENABLED = "adb_enabled";
|
||||
|
||||
/**
|
||||
* Whether ADB over Wifi is enabled.
|
||||
* @hide
|
||||
*/
|
||||
public static final String ADB_WIFI_ENABLED = "adb_wifi_enabled";
|
||||
|
||||
/**
|
||||
* Whether Views are allowed to save their attribute data.
|
||||
* @hide
|
||||
|
||||
@@ -104,6 +104,7 @@ public class SettingsBackupTest {
|
||||
Settings.Global.ADAPTIVE_BATTERY_MANAGEMENT_ENABLED,
|
||||
Settings.Global.ADB_ALLOWED_CONNECTION_TIME,
|
||||
Settings.Global.ADB_ENABLED,
|
||||
Settings.Global.ADB_WIFI_ENABLED,
|
||||
Settings.Global.ADD_USERS_WHEN_LOCKED,
|
||||
Settings.Global.AIRPLANE_MODE_ON,
|
||||
Settings.Global.AIRPLANE_MODE_RADIOS,
|
||||
|
||||
@@ -1009,6 +1009,11 @@ public class SettingsProvider extends ContentProvider {
|
||||
String value = setting != null ? setting.getValue() : null;
|
||||
updateGlobalSetting(Settings.Global.ADB_ENABLED,
|
||||
value, null, true, userId, true);
|
||||
|
||||
setting = getGlobalSetting(Settings.Global.ADB_WIFI_ENABLED);
|
||||
value = setting != null ? setting.getValue() : null;
|
||||
updateGlobalSetting(Settings.Global.ADB_WIFI_ENABLED,
|
||||
value, null, true, userId, true);
|
||||
}
|
||||
} finally {
|
||||
Binder.restoreCallingIdentity(identity);
|
||||
|
||||
@@ -134,9 +134,13 @@ public class AdbService extends IAdbManager.Stub {
|
||||
mIsAdbWifiEnabled = false;
|
||||
|
||||
// register observer to listen for settings changes
|
||||
mObserver = new AdbSettingsObserver();
|
||||
mContentResolver.registerContentObserver(
|
||||
Settings.Global.getUriFor(Settings.Global.ADB_ENABLED),
|
||||
false, new AdbSettingsObserver());
|
||||
false, mObserver);
|
||||
mContentResolver.registerContentObserver(
|
||||
Settings.Global.getUriFor(Settings.Global.ADB_WIFI_ENABLED),
|
||||
false, mObserver);
|
||||
} catch (Exception e) {
|
||||
Slog.e(TAG, "Error in initAdbState", e);
|
||||
}
|
||||
@@ -153,6 +157,7 @@ public class AdbService extends IAdbManager.Stub {
|
||||
|
||||
private class AdbSettingsObserver extends ContentObserver {
|
||||
private final Uri mAdbUsbUri = Settings.Global.getUriFor(Settings.Global.ADB_ENABLED);
|
||||
private final Uri mAdbWifiUri = Settings.Global.getUriFor(Settings.Global.ADB_WIFI_ENABLED);
|
||||
|
||||
AdbSettingsObserver() {
|
||||
super(null);
|
||||
@@ -166,8 +171,13 @@ public class AdbService extends IAdbManager.Stub {
|
||||
FgThread.getHandler().sendMessage(obtainMessage(
|
||||
AdbService::setAdbEnabled, AdbService.this, shouldEnable,
|
||||
AdbTransportType.USB));
|
||||
} else if (mAdbWifiUri.equals(uri)) {
|
||||
boolean shouldEnable = (Settings.Global.getInt(mContentResolver,
|
||||
Settings.Global.ADB_WIFI_ENABLED, 0) > 0);
|
||||
FgThread.getHandler().sendMessage(obtainMessage(
|
||||
AdbService::setAdbEnabled, AdbService.this, shouldEnable,
|
||||
AdbTransportType.WIFI));
|
||||
}
|
||||
// TODO(joshuaduong): Add condition for WIFI transport
|
||||
}
|
||||
}
|
||||
|
||||
@@ -188,6 +198,8 @@ public class AdbService extends IAdbManager.Stub {
|
||||
private boolean mIsAdbWifiEnabled;
|
||||
private AdbDebuggingManager mDebuggingManager;
|
||||
|
||||
private ContentObserver mObserver;
|
||||
|
||||
private AdbService(Context context) {
|
||||
mContext = context;
|
||||
mContentResolver = context.getContentResolver();
|
||||
@@ -213,6 +225,8 @@ public class AdbService extends IAdbManager.Stub {
|
||||
try {
|
||||
Settings.Global.putInt(mContentResolver,
|
||||
Settings.Global.ADB_ENABLED, mIsAdbUsbEnabled ? 1 : 0);
|
||||
Settings.Global.putInt(mContentResolver,
|
||||
Settings.Global.ADB_WIFI_ENABLED, mIsAdbWifiEnabled ? 1 : 0);
|
||||
} catch (SecurityException e) {
|
||||
// If UserManager.DISALLOW_DEBUGGING_FEATURES is on, that this setting can't be changed.
|
||||
Slog.d(TAG, "ADB_ENABLED is restricted.");
|
||||
|
||||
@@ -562,6 +562,9 @@ public class UserRestrictionsUtils {
|
||||
android.provider.Settings.Global.putStringForUser(cr,
|
||||
android.provider.Settings.Global.ADB_ENABLED, "0",
|
||||
userId);
|
||||
android.provider.Settings.Global.putStringForUser(cr,
|
||||
android.provider.Settings.Global.ADB_WIFI_ENABLED, "0",
|
||||
userId);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -702,6 +705,7 @@ public class UserRestrictionsUtils {
|
||||
break;
|
||||
|
||||
case android.provider.Settings.Global.ADB_ENABLED:
|
||||
case android.provider.Settings.Global.ADB_WIFI_ENABLED:
|
||||
if ("0".equals(value)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -434,6 +434,7 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
|
||||
|
||||
GLOBAL_SETTINGS_WHITELIST = new ArraySet<>();
|
||||
GLOBAL_SETTINGS_WHITELIST.add(Settings.Global.ADB_ENABLED);
|
||||
GLOBAL_SETTINGS_WHITELIST.add(Settings.Global.ADB_WIFI_ENABLED);
|
||||
GLOBAL_SETTINGS_WHITELIST.add(Settings.Global.AUTO_TIME);
|
||||
GLOBAL_SETTINGS_WHITELIST.add(Settings.Global.AUTO_TIME_ZONE);
|
||||
GLOBAL_SETTINGS_WHITELIST.add(Settings.Global.DATA_ROAMING);
|
||||
|
||||
Reference in New Issue
Block a user