常用adb命令

Rookie_L
2022-10-11

一、adb devices

这个命令适用于:检查设备连接情况,有三种状态:device、offline以及 没有 device

  • device:正常状态,设备已经连接上电脑;窗口中会显示获取到设备的序列号,若连接多台设备,可以根据序列号,使用 “-s + 序列号” 只对某台设备进行操作。eg;
    • adb -s 5fdd2b2b shell df #查看设备磁盘使用情况
    • adb -s 5fdd2b2b install xxx.apk #安装某个软件adb shell df
  • offline:未连接到 adb 或不响应。
  • 没有device:未连接模拟器/设备。

二、adb root

此命令适用于:切换adb服务使用对象为root用户,但是在user版本下无效。

此命令仅在debug版本下有用,对于user版本想切换成root用户,必须先root设备,然后在adb shell下使用命令“su”切换成root账户;或者刷入debug版本OS包即可解决。

三、adb push <PC机上的文件> <Android设备路径>

此命令适用于:将PC机上的文件拷贝一份到Android设备路径下。注意PC机上文件路径和Android设备路径的路径分隔符可能是不同的。

eg: adb push D:\android\test\test.sh /data/local/tmp/

但是,当我们push到system、etc等目录下时,因为其是只读属性,往往会读写失败。这个时候我们需要执行以下两个命令:1. adb root 切换到root用户;2. adb remount 重新挂载system分区,实现对system分区重新挂载

  • adb root
  • adb remount

四、adb pull <Android设备上的文件> <PC机路径>

此命令适用于:将Android设备上的文件拷贝一份到PC机路径下。注意Android设备路径和PC机路径的路径分隔符可能是不同的。

eg:adb pull /data/local/tmp/logcat.txt D:\android\test

常见问题:有时候因为pull一个文件夹下所有文件,而其中的某几个文件没有pull出来。这个时候我们需要切换到root 用户再尝试pull;若还是不行,就需要更改需要pull文件或文件夹的权限。

 adb shell
 ​
 chmod 777 <文件>
 ​
 chmod 777 <文件夹> -R

五、adb install xx.apk

此命令适用于: 安装xx.apk到设备中,xx.apk前可以加上apk所在路径,注意这个路径是PC机的路径。

eg: adb install -t E:\App_package\PsamTest9.0\app\build\outputs\apk\debug\PsamTest22.0-10101943.apk

adb install xx.apk

六、adb uninstall package

此命令适用于:卸载package对应的apk,注意package是包名,若不知道apk对应的包名是什么,可以通过以下方式来获取:首先打开要卸载的apk, 然后在命令行输入 adb shell dumpsys window | findstr mCurrentFocus 即可获取包名。

adb shell dumpsys window | findstr mCurrentFocus

获取到包名之后就可以卸载apk

eg: adb uninstall com.un.psamtest

adb uninstall com.un.psamtest

七、adb shell + shell_cmd

此命令适用于:在cmd窗口执行 shell命令;shell_cmd二进制文件存储在模拟器或设备的文件系统中,其路径为 /system/bin/ 和/system/xbin/。adb shell 后面可以直接跟上shell_cmd,也可以按下Enter键后,再输入shell_cmd。

eg: adb shell ls -l /system

adb shell

八、adb remount

此命令适用于:remount /system/, /etc/等路径的读写权限,使当前用户有权限读写设备中/system/, /etc/等路径下的文件。使用先必须先用adb root命令。

当 remount 失败时,可以先运行adb disable-verity命令,然后重启设备,最后再使用root和remount命令。

 adb disable-verity
 ​
 adb reboot
 ​
 adb root
 ​
 adb remount
收藏 0
打赏
记adb版本更新问题
上一篇
Centos7.6 安装docker教程
下一篇

发表评论

注册不是必须的

Rookie_L

Rookie_L 博主

Android Developer Fullstack Explorer 极客生活家
文章目录 0%
您的支持是我更新的最大动力
在手机上浏览此页面