yuandaimaahao / AndroidFrameworkTutorial

写给应用开发的 Android Framework 教程
Apache License 2.0
734 stars 190 forks source link

大佬们有人会给Android 设备强制开启USB调试吗 #22

Open yuandaimaahao opened 1 year ago

df13954 commented 1 year ago

安卓所以设备?还是说AOSP?

df13954 commented 1 year ago

AOSP

我现在发现2个方式。 Android10为例子

方案1

http://www.aospxref.com/android-10.0.0_r47/xref/frameworks/base/packages/SystemUI/src/com/android/systemui/usb/UsbDebuggingActivity.java

【Android改机系列AOSP 10默认授权usb激活adb】 https://www.bilibili.com/video/BV1LW4y1T7gT 这是我录制视频,当弹出adb授权之后,在这个弹窗中做了一个倒计时,5秒后自动授权,授权代码就是主动调用确认的代码。代码位置在上方链接。(限制:手机必须未锁屏状态)

方案2

直接授权 http://www.aospxref.com/android-10.0.0_r47/xref/system/core/adb/daemon/main.cpp

// 直接返回 false
should_drop_privileges()

system/core/liblog/properties.cpp

修改返回值为1
int __android_log_is_debuggable()

/frameworks/base/services/core/java/com/android/server/adb/AdbService.java

Settings.Global.putInt(mContentResolver, Settings.Global.ADB_ENABLED, mAdbEnabled ? 1 : 0);
// 修改
Settings.Global.putInt(mContentResolver, Settings.Global.ADB_ENABLED, 1);