客户需要user固件默认开启usb调试。
要在一下两处进行修改:framework/base下的AdbService.java和UsbDebuggingActivity.java
AdbService.java
public void systemReady() {
if (DEBUG) Slog.d(TAG, "systemReady");
/*
* Use the normal bootmode persistent prop to maintain state of adb across
* all boot modes.
*/
mIsAdbUsbEnabled = containsFunction(
SystemProperties.get(USB_PERSISTENT_CONFIG_PROPERTY, ""),
UsbManager.USB_FUNCTION_ADB);
boolean shouldEnableAdbUsb = mIsAdbUsbEnabled
|| SystemProperties.getBoolean(
TestHarnessModeService.TEST_HARNESS_MODE_PROPERTY, false);
mIsAdbWifiEnabled = "1".equals(
SystemProperties.get(WIFI_PERSISTENT_CONFIG_PROPERTY, "0"));
// make sure the ADB_ENABLED setting value matches the current state
try {
// 强制开启adb调试
Settings.Global.putInt(mContentResolver,
Settings.Global.ADB_ENABLED, 1);
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.");
}
}
UsbDebuggingActivity.java则是不进行判断弹窗后默认同意。
在onCreate里setupAlert();之前。并且要在设置key之后。不然会无法使用adb呢
UsbDebuggingActivity.java
notifyService(true, true); //默认同意
finish();