adb命令

adb命令

命令类型:普通型与shell型

普通型格式:adb+命令

一般只能在电脑上运行

显示已连接设备
adb devices
安装app

当只有一台设备时,可直接执行命令

超过一台设备时,必须使用adb -s + 序列号的方式来指定设备

adb install xxx.apk

如果apk不在同一个目录下,可以直接将apk拖到命令行里,自动填充路径

如果路径有空格,需要给路径添加英文引号:

adb install "C:\user\jamz\desktop\test folder\test.apk"

附加参数:adb + install+ 参数 +apk路径

  • -t 允许安装debug版测试包
  • -r 替换已存在的应用程序,强制安装
  • -d 允许降级安装
  • -g 安装后自动授予所有权限
卸载app
adb uninstall 包名

附加参数:adb uninstall + 参数 + 包名

  • -k 保留数据卸载
推送/接收文件
adb push / pull

传文件到手机:adb push + 电脑路径 + 手机路径

如果文件名中包含中文,需要在手机端路径补全中文,否则推送后会丢失后缀名:

adb push 测试.mp4 /sdcard/测试.mp4
重启到指定模式
reboot :重启手机
reboot recovery 重启到恢复模式
reboot bootloader 重启到fastboot模式
reboot fastboot 重启到fastbootd模式(VAB分区机型)
reboot download 重启到挖煤模式
reboot -p 关机

shell型格式:adb shell + 命令

可在电脑(adb shell + 命令)或手机(+命令)运行

但手机运行需要root权限或第三方工具提权

所以在没有root情况下,使用电脑执行,可获得更高的权限

shell型命令:交互式和非交互式

非交互式:adb shell + 命令

交互式:adb shell ,再执行命令

以下都以交互式为例:

活动管理器am (Acvity Manager)

让app启动并直接跳转到指定页面:

am start com.jamcz.test/com.jamcz.test.MainActivity

强制结束正在运行的软件:

am force-stop com.Android.settings
包管理器pm(Package Manage)

强制禁用软件:

pm disable-user + 包名

启用:

pm enable + 包名

卸载系统软件:

pm uninstall --user 0 + 包名

通过adb卸载的系统软件只是针对当前用户卸载,它的安装包依然在system分区中,可以通过shell类命令装回来

cmd package install-existing + 包名  前提是已提取

提取apk分两步:

  1. 获取apk路径:pm path + 包名
  2. 推送:adb pull + apk路径 + 电脑路径
窗口管理器wm(Window Manager)

修改分辨率:wm size xPx + 'x' + yPx

修改DPI:wm density + 数值

input

input可以模拟各种触摸,机身按键等,非常时候做自动化

模拟点击屏幕:

input tap x y

模拟滑动屏幕:

input swipe x1 y1 x2 y2 d (x1 y1 为起始坐标,x2 y2为终点坐标,d为滑动时长)
posted @ 2024-04-26 10:17  搬砖在路上  阅读(25)  评论(0编辑  收藏  举报