对于开发的伙伴们避免不了打开调试模式去调试软件看log什么的,为了节省时间默认打开adb调试功能就是一个不错的选择。
1、在系统软件版本是user版本的情况下,就要去修改以下文件:6762_P\build\core\main.mk
ifneq (,$(user_variant))
# Target is secure in user builds.
ADDITIONAL_DEFAULT_PROPERTIES += ro.secure=1
ADDITIONAL_DEFAULT_PROPERTIES += security.perf_harden=1
ifeq ($(user_variant),user)
ADDITIONAL_DEFAULT_PROPERTIES += ro.adb.secure=1
else
#2019.11.19 by lwz add
ifeq ($(strip $(MY_MMI_BOOL_DEF_ADB_OPEN)), yes)
ADDITIONAL_DEFAULT_PROPERTIES += ro.adb.secure=0
else
ADDITIONAL_DEFAULT_PROPERTIES += ro.adb.secure=1
endif
endif
# Target is less debuggable and adbd is off by default
#ADDITIONAL_DEFAULT_PROPERTIES += ro.debuggable=0
#2019.11.19 by lwz add
ifeq ($(strip $(MY_MMI_BOOL_DEF_ADB_OPEN)), yes)
ADDITIONAL_DEFAULT_PROPERTIES += ro.debuggable=1
else
ADDITIONAL_DEFAULT_PROPERTIES += ro.debuggable=0
endif
endif # !enable_target_debugging
2、默认授权RSA秘钥指纹弹框dialog
frameworks\base\services\usb\java\com\android\server\usb\UsbDebuggingManager.java
private void listenToSocket() throws IOException {
try {
byte[] buffer = new byte[BUFFER_SIZE];
while (true) {
int count = mInputStream.read(buffer);
if (count < 0) {
break;
}
if (buffer[0] == 'P' && buffer[1] == 'K') {
String key = new String(Arrays.copyOfRange(buffer, 2, count));
Slog.d(TAG, "Received public key: " + key);
//modefi by lwz auto agree to usb connection
if(DefineSystemProperties.BOOL_NO_USBDEBUG_DIALOG){
Message msg = mHandler.obtainMessage(UsbDebuggingHandler.MESSAGE_ADB_ALLOW);
mFingerprints = getFingerprints(key);
msg.arg1 = 1;
msg.obj = key;
mHandler.sendMessage(msg);
}else{
Message msg = mHandler.obtainMessage(UsbDebuggingHandler.MESSAGE_ADB_CONFIRM);
msg.obj = key;
mHandler.sendMessage(msg);
}///end
} else {
Slog.e(TAG, "Wrong message: "
+ (new String(Arrays.copyOfRange(buffer, 0, 2))));
break;
}
}
} finally {
synchronized (this) {
closeSocketLocked();
}
}
}