高通平台(qualcomm)android10user版本默认打开adb调试小结

KdanMin KdanMin     2022-12-09     574

关键词:

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博客

高通平台sba升级步骤

...是使用高通提供的如下链接:AMSSStandardOEMhttps://chipcode.qti.qualcomm.com/打开链接如图:点击图中标记处即可下载最新的SBA,但这样下载的文件是包含所有模块等内容的,较大,下载较费时间,所以建议下载差异部分。点击如图中的Co... 查看详情

高通平台抓取ramdump文件(代码片段)

...正常获取设备执行代码中的pythonvendor/xiaomi/securebootsigner/Qualcomm/tools/debugpolicy.py执行脚本完成后,手机会自动重启开启手机的download模式待手 查看详情

2022高通sa8155psdm845平台开源代码下载

2022高通SA8155P、SDM845平台开源代码下载​​SA8155P开源代码下载:Android10​​​​sdm845开源代码下载:Android12​​SA8155P开源代码下载:Android10官网:​​​https://wiki.codelinaro.org/en/clo/la/release​​repoinit--depth=1-uhttps://git.codelinaro.o 查看详情

高通平台android系统编译指令大全

其他平台以及根据自己产品lunch里面进行自定义添加选项即可,此文仅供参考,如有雷同,纯属巧合转载请注明出处谢谢 Android系统编译指令大全_KdanMin的博客-CSDN博客 查看详情

android:高通平台camera调试(代码片段)

相关平台信息:【SDM845/670】1.AF调试部分(1)通过属性控制:--AFLog控制--setproppersist.vendor.camera.logInfoMask0x8000000//AFinfolevellogsetproppersist.vendor.camera.logVerboseMask0x8000000//AFverboselevellog--禁用深度焦点指示--setp 查看详情

高通平台开发系列讲解(充电篇)android系统充电代码结构

文章目录一、整体代码组成二、BatteryService三、Healthd四、power_supply沉淀、分享、成长,让自己和他人都能有所收获! 查看详情

不懂,为啥都说高通820的kryo架构是自研架构

...,没有太大区别 参考技术B作为智能手机芯片的领军者,Qualcomm此前的32位骁龙芯片大都采用自主微架构。最初的MSM8250开始使用Scorpion微架构;而在过去的三年中,Qualcomm则一直在使用Krait架构,这个架构是基于ARM架构上的二次开... 查看详情

高通平台开发系列讲解(android篇)audiotrack音频流数据传输

文章目录一、音频流数据传输通道创建1.1、流程描述1.2、流程图解二、音频数据传输2.1、流程描述2.2、流程图解沉淀、分享、成长,让自己和他人都能有所收获! 查看详情

高通平台pinctrl的使用总结

平台内核版本安卓版本msm8953Linux3.18Android7.1文章目录一、pinctrl的作用二、pinctrl的相关概念三、driver调用pincontrolsubsystem3.1、pinmux_enable_setting3.2、pinconf_apply_setting四、pinctrl的默认state一、pinctrl的作用 查看详情

高通平台红外检测驱动程序实现

平台内核版本安卓版本msm8953Linux3.18Android7.1文章目录一、查看原理图二、软件实现2.1、创建设备结构体2.2、创建class2.3、probe中进行初始化2.4、value_show的实现2.5、中断处理一、查看原理图 查看详情

高通刷机教程

...,通过镜像刷写分区来刷机,下载地址https://createpoint.qti.qualcomm.com/to2、下载刷机包,解压3、打开QFIL应用程序,根据项目配置信息选择内存类型为e 查看详情

听说高通平台处理器有先天的音频采样率缺陷,是啥

...通的Codec设计遵循了AC97规范,硬件强制48kHz输出,再由于Android系统采样率从锁定,当时包括高通、NVIDIA、三星等主流移动处理器芯片组在内的几乎所有的Android手机在48kHz采样率音频播放时都会得到一致的测试结果。在谷歌官方固... 查看详情

android4.4高通平台中的应用路径及应用裁剪方法(代码片段)

去掉Android中应用的方法:1.build\\target\\project修改它下面的.mk文件如:core.mk,core_minimal.mk,full_base.mk,full_base_telephony.mk,generic_no_telephony.mklarge_emu_wh.mk,mini.mk,sdk.mk,telephony.mk等࿰ 查看详情

高通平台android怎么过去开机时间

参考技术A(1)Android是基于Linux内核的系统,因此Android的启动过程是分为两个阶段的:第一个阶段就是Linux内核的启动第二个阶段就是Android框架的启动(包括核心服务和程序)。(2)Android的log系统是独立于Linux内核的log系统的... 查看详情

高通平台usb网卡调试(代码片段)

内核版本安卓版本Linux4.9Android9文章目录USB网卡识别USB网卡识别USB网卡需要模组的USB工作在主机模式下才可以识别网卡,通过执行echo8>/proc/sys/kernel/printk后插入USB网卡时,就可以从kernellog中看到USB网卡的枚举信息。接上USB网卡后... 查看详情

高通平台emac驱动设备树分析(代码片段)

内核版本安卓版本Linux4.9Android9文章目录一、中断管脚二、RGMII_PWR_EN管脚三、reset管脚一、中断管脚文件:kernel/msm-4.9/arch/arm/boot/dts/qcom/sdxpoorwills.dtsi中断名称为phy_intr经过以下流程将设备树中的phy-intr映射到内存中: 查看详情

高通平台常用缩写

高通的MSM是mobilestationmodems.移动基带处理器.带基带的手机处理器. QRD就是高通参考设计(QualcommReferenceDesign)PBL:APPSPBL(ApplicationPrimaryBootLoader),主引导加载程序RPM:ResourcePowerManager,资源电源管理器RPM(ResourcePowerManager)是高通MS... 查看详情

高通平台开发系列讲解(gps篇)nmea数据包解析

文章目录一、通用NMEA语句类型二、NMEA语句格式2.1、GSV语句2.2、RMC语句2.3、GSA语句2.4、VTG语句2.5、DTM语句2.6、GNS语句2.7、GGA语句2.8、GLL语句2.9、GST语句2.10、ZDA语句沉淀、分享、成长,让自己和他人都能有所收获! 查看详情