高通平台(Qualcomm) Android 10 user版本默认打开adb 调试小结
Posted KdanMin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高通平台(Qualcomm) Android 10 user版本默认打开adb 调试小结相关的知识,希望对你有一定的参考价值。
1.流程
USB插入接收广播授权->建立adb连接服务->执行adb 命令
2.adb相关属性
ro.secure = 0 | 开启root权限 |
ro.adb.secure = 1 | 1开启adb RSA 指纹认证 ,0关闭 |
ro.debuggable = 1 | 1开启adb debug,0关闭 |
3.修改源码位置 build/core/main.mk 部分代码如下图所示
4、/PA1032/frameworks/base/packages/SystemUI/src/com/android/systemui/usb
5其他:需要注意更换电脑 需要将默认.android目录adbkey.pub/adbkey文件 替换到misc目录adb_keys文件即可
6.Android 9与Android 10 异同
6.1 Android 9
/system/core/adb/Android.mk(注意Android 10此目录是Android.bp文件)
- LOCAL_CFLAGS += -DALLOW_ADBD_NO_AUTH=$(if $(filter userdebug eng,$(TARGET_BUILD_VARIANT)),1,0)
+ LOCAL_CFLAGS += -DALLOW_ADBD_NO_AUTH=$(if $(filter user userdebug eng,$(TARGET_BUILD_VARIANT)),1,0)
6.2关闭弹窗提示
源码位置:
frameworks/base/packages/SystemUI/src/com/android/systemui/usb/UsbDebuggingActivity.java
boolean connected = intent.getBooleanExtra(UsbManager.USB_CONNECTED, false);
+ // boolean connected = intent.getBooleanExtra(UsbManager.USB_CONNECTED, false);
+ boolean connected = false;
if (!connected)
mActivity.finish();
+ try
+ IBinder b = ServiceManager.getService(USB_SERVICE);
+ IUsbManager service = IUsbManager.Stub.asInterface(b);
+ service.allowUsbDebugging(true, mKey); //USB授权通过
+ // service.clearUsbDebuggingKeys();
+ catch (Exception e)
+ Log.e(TAG, "Unable to notify Usb service", e);
+
6.3 Android 10 去掉默认授权弹窗代码如下,只需要在接收到USB插入广播之后进行adb ipc跨进程通信即可 如下图所示
6.4 Anoroid 9 源码位置framework/base/core/java/android/hardware/usb/IUsbManager.aidl
6.5 Android 10源码位置framework/base/core/java/android/hardware/usb/IUsbManager.aidl
6.6 执行 source build/envsetup.sh->lunch 25-> make installclean -> make -j32(不了解编译指令查看这里玩转AOSP源码编译_yzm65580952的博客-CSDN博客_aosp编译)烧录软件之后 查看修改 到这里基本结束了。默认打开adb调试 如下图所示
7.总结
虽然这个功能不难但是涉及很多细节
1、adb 基础 root权限 sytem/bin/ 或者 xbin
2、aidl 这里不再赘述有需要自行百度
3、跨进程通信 binder服务(java binder 和 native binder)
4、SystemUI->systeme->usb
5、AOSP 源码 答案一般都是来自源码
AOSP 源码学习网站
1、学习网站
(1) http://aospxref.com/(Android13)
(2)http://aosp.opersys.com/(Android12)
(3)https://android.googlesource.com(需要vpn翻墙)
(4) http://androidxref.com/(目前最新Android 9.0)
2、学习源码阅读工具
(1)SouceInsight(无法编译源码/无法获取最新源码)
(2)Android Studio
(3)VsCode
(4)SublimeText
(5)NodePad++
(6)Xshell
感谢
android user版本默认开启adb调试,不弹出对话框_王不六的博客-CSDN博客_adb调试弹窗
注意:这里只是高通平台 具体其他平台请以实际平台为主例如RK(瑞芯)/AllWinner(全志)/MTK/展讯
转载请注明出处 ,谢谢。高通平台(Qualcomm) Android 10 user版本默认打开adb 调试小结_KdanMin的博客-CSDN博客
以上是关于高通平台(Qualcomm) Android 10 user版本默认打开adb 调试小结的主要内容,如果未能解决你的问题,请参考以下文章