安卓嵌入式常用ADB命令
1.0 连接设备相关
- adb devices:列出连接到计算机的所有 Android 设备,以及它们的状态。
- adb reboot:重新启动连接的设备。
- adb -s device_id 命令:选择指定设备执行相关命令。其中devices_id 是指定的设备的id,可通过adb devices命令查看,命令则是你想要对设备执行什么具体的命令。如:
adb -s 12345 reboot
表示指定设备id为12345的设备重启。
2.0 安装应用程序相关
- adb install path_to_apk:安装一个应用程序(APK文件)到连接的设备上。这里path_to_apk通常是用pc上对应的apk路径。
- adb install -r path_to_apk:用于在 Android 设备上安装 APK 文件并覆盖已有的应用程序。具体而言,-r 参数表示重新安装应用程序,并保留现有数据。
- adb install -g path_to_apk:-g 选项表示在安装应用程序时授予所有权限。
- adb uninstall package_name:卸载指定包名的应用程序。
3.0 文件传输相关
- adb pull remote local:从设备中复制文件到计算机。remote通常是指在设备中的路径,local通常是指在pc上的路径。
- adb push local remote:将文件从计算机推送到设备。
4.0 日志相关
- adb shell logcat:查看设备的日志输出。
- adb shell dmesg:用于查看和分析内核环缓存的日志消息。它显示了内核启动过程中产生的各种信息、警告和错误消息。
5.0 烧录相关
- adb reboot edl:EDL (Emergency Download) 模式是高通芯片手机的一种特殊模式,它允许我们通过 USB 线刷入 ROM 或修复手机。
- adb reboot bootloader:重启设备并进入 bootloader 模式。
- fastboot reboot:bootloader 模式下重启。
- fastboot flash partition filename:用于将指定的镜像文件刷入设备中指定的分区。其中partition指分区,filename文件路径名。相关内容例如:
// Fastboot 模式下刷入设备树补丁(DTBO)镜像
fastboot flash dtbo path_of_dtbo.img
// 解锁unlock状态
fastboot flashing unlock
// 锁定状态
fastboot flashing lock
// 清空data数据
fastboot erase data
// 格式化data分区数据
fastboot format data
// 得到锁的状态
fastboot getvar devices-state
// 擦除 modem 分区
fastboot erase modem
// 重启
fastboot reboot
// 一次烧写boot,system,recovery分区:
(1) 创建包含boot.img,system.img,recovery.img文件的zip包。
(2) 执行:fastboot update zipName.zip
6.0 其他
- adb shell:启动一个命令行 shell,在连接的设备上执行命令。
- adb forward tcp:
tcp: :建立端口转发,将设备上的端口映射到计算机上。例如:
adb forward tcp:8080 tcp:8888
这意味着你在连接的 Android 设备上将设备的 8080 端口转发到计算机的 8888 端口上。这样,当计算机上的程序尝试连接到 8888 端口时,实际上会通过 ADB 被转发到设备上的 8080 端口。
- adb shell ps:列出设备上当前运行的进程信息。
- adb shell top:显示设备上的实时系统资源占用情况。
- adb start-server:用于启动 ADB 服务器。ADB服务器负责处理来自客户端的请求。如果你要在计算机上使用 ADB 命令与已连接的 Android 设备进行通信,需要先确保 ADB 服务器正在运行。通常情况下,在使用 ADB 命令之前,你可以先执行 adb start-server 确保 ADB 服务器处于运行状态。
- adb kill-server:命令用于终止 ADB(Android Debug Bridge)服务器的运行。当你执行这个命令时,ADB 服务器将会被关闭,并且所有与设备的连接都会被断开。
- adb version:用于查看当前安装的 ADB 工具的版本信息。
- adb root:用于在 Android 设备上获取 root 权限。
- adb shell getprop ro.build.type:查看安卓版本是user版本还是userdebug版本。
- adb shell getprop ro.product.cpu.abi:查看系统是64位还是32位。
- adb remount:用于重新挂载 Android 设备的文件系统为可读写模式。
相关的操作步骤为:
adb root
adb disable-verity
adb reboot
adb remount
- adb shell setenforce 0:将 SELinux 的强制模式(Enforcing Mode)切换为宽松模式(Permissive Mode)。在宽松模式下,SELinux 会记录违规的行为,但不会阻止它们的执行。
在 Android 系统中,SELinux(Security-Enhanced Linux)是一个安全子系统,用于控制进程和应用程序对系统资源的访问权限。它可以帮助提高系统的安全性,防止恶意软件和攻击。通过运行 adb shell setenforce 0 命令,你可以临时禁用SELinux的强制模式,以便在某些情况下执行需要更高权限的操作。
需要注意的是,禁用SELinux的强制模式可能会降低系统的安全性,因为它放宽了对系统资源的控制。因此,在正常情况下,不建议长时间将SELinux保持在宽松模式下。 - shell cat d/gpio:查看GPIO情况。( linux系统执行 cat /sys/kernel/debug/gpio )
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂
· 凌晨三点救火实录:Java内存泄漏的七个神坑,你至少踩过三个!