安卓系统和ADB以及AT调试端口

本文介绍了安卓系统的基础知识,包括其作为嵌入式系统的特性,以及ADB(Android Debug Bridge)如何通过USB接口进行调试。重点讨论了ADB驱动安装和开启调试选项,以及如何进入恢复模式。此外,还详细讲解了AT命令用于基带模块的调试,包括端口配置和串口通信。通过实例展示了如何进行OEM解锁、安装TWRP Recovery、推送Magisk以及进行AT口调试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android是谷歌基于Linux内核开发的移动端操作系统,广泛应用于当前的智能手机,智能手机在硬件上实质是嵌入式系统,因为蜂窝通信涉及比较复杂的基带处理,所以除了主控芯片之外最为重要的控制核心就是基带芯片,ADBAndroid Debug Bridge的缩写,是安卓系统通过USB接口提供的调试端口,其驱动称为ADB驱动,安装ADB驱动后在系统设置中的开发者选项里勾选USB Debugging,控制本就可以通过驱动模拟出该调试端口。

这里写图片描述

AT端口则是基带模块为外部控制命令预留的接收端口,一般还会预留基带处理log的输出端口,AT输入以及log输出端口既可以由主控芯片即运行其上的系统访问也可以通过USB接口模拟进行外部输入输出,安装手机设备驱动后一般还需要进入工厂模式打开相应的端口开关,工厂模式进入方法以及端口开关不同厂商均有差异,如Oneplus手机需要在号码盘键入*#801#即可进入工厂模式。

P.S. *#*#4636#*#*用于查看小区信息

这里写图片描述

打开相应的端口开关控制本就可以通过驱动模拟出对应的AT端口和串口,配置对应的波特率即可使用串口通信协议进行消息交互。

这里写图片描述

因为智能手机的嵌入式系统本质,因此软件层面上也符合计算机系统的基本原理,上电启动后会先引导BootLoader,默认BootLoader会直接加载系统分区里的内核,也可以选择引导recovery镜像进入恢复模式,一般各智能手机厂商会通过电源键和上下音量键的不同组合来激发手机上电后进入的模式,更一般的可以通过adb命令进行控制。

ADB Driver Installer + Android SDK Platform Tools

ADB Driver Installerhttp://adbdriver.com/
Android SDK Platform Toolshttps://developer.android.google.cn/studio/releases/platform-tools

通过USB连接手机和控制本,安装ADB驱动后打开USB调试选项。

这里写图片描述

打开终端界面进入到SDK平台工具目录下,目前常用的就是adbfastboot工具,adb用于systemrecovery级别的调试,fastboot用于BootLoader级别的调试。

fastboot devices
fastboot oem unlock 

fastboot flash system system.img
fastboot flash persist persist.img
fastboot flash cache cache.img
fastboot flash userdata userdata.img
fastboot flash boot boot.img
fastboot flash recovery recovery.img

fastboot boot twrp-3.2.1-0-enchilada.img
fastboot reboot
adb devices
adb -s <device_id> xx
adb reboot 
adb reboot bootloader 
adb reboot recovery
adb install -r apk_dir
adb pull /sdcard/screen.png hello.png
adb push iperf /sdcard/

adb shell settings put global airplane_mode_on 1
adb shell settings put global airplane_mode_on 0
adb shell settings get global airplane_mode_on
adb shell input keyevent 26
adb shell input keyevent 67
adb shell input tap 1000 550
adb shell input swipe 540 1900 540 1000
adb shell am start com.magicandroidapps.iperf/com.magicandroidapps.iperf.iperf
adb shell input text "iperf -u -c 10.163.200.98 -l 1370 -t 4900 -i 1 -p 9001 -b 200M"
adb shell am force-stop com.magicandroidapps.iperf
adb shell screencap -p /sdcard/screen.png
adb shell dumpsys window displays

实例:OnePlus Root + Iperf移植

1. OEM Unlock

进入手机设置界面在开发者选项中勾选OEM Unlocking,注意Oneplus手机的Developer Options需要在About Phone里连续敲击Build number才能激活显示,然后敲入adb reboot bootloader进入BootLoader模式,在该模式下使用fastboot敲入fastboot oem unlock进行BootLoaderunlock,这样就才可以进行接下来镜像的烧写操作,Unlock之后系统会重置,因此需要在系统中重新激活开发者选项以及打开USB调试。

2. TWRP Recovery Flash

TWRPhttps://twrp.me/Devices/

下载TWRP对应手机型号的镜像,然后重新进入BootLoader模式,1+5手机使用命令fastboot flash recovery twrp-3.2.2-0-20180721-codeworkx-cheeseburger直接烧写Recovery镜像,然后在BootLoader界面内选择进入Recovery mode即可启动TWRP1+6手机不在使用单独的Recovery分区,因此使用命令fastboot boot twrp-3.2.3-0-enchilada.img直接引导进入TWRP

这里写图片描述

3. Push Magisk & Iperf

Magiskhttps://forum.xda-developers.com/apps/magisk
Iperf C++ Sourcehttps://iperf.fr/iperf-download.php

Magisk用于Android系统提权root,下载最新版本的zip包于本地,Iperf工具用于网络灌包排查速率问题,目前Android平台下只有APK没有命令行版本,因此需要使用源码进行平台移植编译,具体流程在此不在涉及。在Recovery模式下使用adb命令将MagiskIperf传送至sdcard内。

adb shell mkdir /sdcard/root
adb push Magisk-v16.7.zip /sdcard/root
adb push iperf /sdcard/root
adb shell ls -al /sdcard/root

4. TWRP Install Magisk

TWRP界面上使用Install安装Magisk镜像,完成后reboot进入系统后可以看到Magisk APP已经安装,使用adb shell进入命令行,敲击命令su进行提权在手机界面弹出的Magisk Shell Granted窗口点击Forever即成功,在命令行使用id命令可以看到当前的用户已经变成了root

这里写图片描述

5. system, root re-mount

因为系统中的分区默认都是只读挂载因此为了将iperf移植到/system/bin目录下并赋予可执行权限就必须进行分区的可读重挂载。

cat /proc/mounts | grep system
cat /proc/mounts | grep root

mount | grep root
mount | grep system

mount -o remount,rw rootfs /
mount -o remount,rw /dev/block/platform/soc/1da4000.ufshc/by-name/system /system
mount -o remount,rw /dev/block/sde21 /system

cp /sdcard/root/iperf /system/bin/
chmod 755 /system/bin/iperf

实例:AT口调试

安装有设备驱动的控制本上会模拟出AT端口,可以看到端口号以及波特率,通过这些信息就可以通过串口工具进行连接。

这里写图片描述

在窗口中敲入AT回车显示OK即表示交互正常,不同厂商AT命令有差异。

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值