adb基础指令
1.adb devices|显示当前运行的全部Android设备。
2.adb -s 设备编号|对某一设备执行命令。
3.adb install APK路径|安装应用程序
- -r表示replace覆盖安装。
- 连接了多台设备时,需要指定设备**-s 设备编号**
- 真机操作,需要给adb命令授权ps:注意看手机的提示。或者取消“监控ADB安装应用”
4.aapt dump badging APK路径|查看某个apk的主包名和主类包
- 需要用findstr 来抓取 主包名和主类名
- 主包名:findstr package
- 主类名:findstr lanchable-activity
launchable-activity: name=‘cn.thepaper.paper.ui.splash.welcome.LaunchActivity’
5.adb uninstall 主包名|卸载应用程序。
6.adb pull|获取模拟器中的文件。
7.adb push |向模拟器中写文件。
8.adb shell am start -n 主包名/主类名:启动应用程序。
adb shell am start -n com.wondertek.paper/cn.thepaper.paper.ui.splash.welcome.LaunchActivity
9.adb shell am start -W -n 主包名/主类名|启动应用程序并查看启动时间。
- 热启动:软件在后台运行着
- 冷启动:后台没有该软件
- 相关参数
- ThisTime :最后一个启动的Activity的启动最后耗时时间
- TotalTime:自己的所有Activity的启动耗时。其实就是app启动的时间
- WaitTime :ActivityManangerService 启动 APP 的Activity 时的总时间
10.adb shell am force-stop 应用包名|强制停止某个应用程序
- 手机的返回操作
11.** adb logcat -s ActivityManager**|实时查看ActivityManager的日志。 - 启动后再手工启动App,可即时查看Activity 名称.
12.adb shell ps | finstr 主包名:查看某个进程是否在启动状态。
13.*adb kill-server|关闭adb服务。
14.adb start-server|启动adb服务。
15.*adb connect 设备编号|让adb再次连接到某台设备上。
- offline:没有连接上设备
- devices:连接成功
16.adb shell screencap -p /sdcard/screen.png(手机上的路径)|对设备进行截图并保存到/sdcard目录下。
17.adb shell pm list package|列出所有的应用的包名。
18.adb shell pm list package -3|列出所有第三方安装的应用程序包名。
19.adb shell input text 文本内容:在设备的当前光标位置发送文本内容,不能发送中文。
20.adb shell input keyevent 模拟按键|发送一个键盘事件
按键编码 | KeyEvent类的按键名称 | 说明 |
3 | KEYCODE_HOME | 主页键(未开放给普通App) |
4 | KEYCODE_BACK | 返回键(后退键) |
24 | KEYCODE_VOLUME_UP | 加大音量键 |
25 | KEYCODE_VOLUME_DOWN | 减小音量键 |
26 | KEYCODE_POWER | 电源键(未开放给普通App) |
66 | KEYCODE_ENTER | 回车键 |
67 | KEYCODE_DEL | 删除键 (退格键) |
82 | KEYCODE_MENU | 菜单键 |
84 | KEYCODE_SEARCH | 搜索键 |
187 | KEYCODE_APP_SWITCH | 任务键(未开放给普通App) |
21.adb shell input tap X Y|在设备的(X,Y)坐标位置发送一个触摸事件(即单击)
22.adb shell input swipe X1 Y1 X2 Y2|模拟滑动操作,从(X1,Y1)位置滑动到(X2,Y2)位置
- 起点横坐标大于终点横坐标,模拟从右往左滑动
- 起点横坐标小于终点横坐标,模拟从右往左滑动
- 起点纵坐标大于终点纵坐标,模拟从上往下滑动
- 起点纵坐标大于终点纵坐标,模拟从上往下滑动
- 自己自由发挥,坐标从屏幕左上开始(0,0)到右下结束(**,**)
23.adb shell input swipe X1 Y1 X2+1 Y2+1 2000:在同一个位置长按2秒。
24.adb logcat|查看实时日志
官方参考文档
- 保存日志到本地文件
adb logcat > E:\demo\test.log
- 查看日志中保含有error的行 adb logcat |findstr erro
adb logcat |findstr error
- 自定义定义日志级别
adb logcat *:F
- 显示com.wondertek.paper包相关的严重级别的错误
adb logcat *:F|findstr com.wondertek.paper
- 过滤规则
日志分7个等级,按照从最低到最高优先级的顺序排列:
等级 | 优先级(从低到高) | 程度 |
V | Verbose:2 | 详细 (最低优先级) |
D | Debug:3 | 调试,输出info日志,警告日志,及debug日志 |
I | Info:4 | 信息 |
W | Warning:5 | 警告 |
E | Error:6 | 错误 |
F | Fatal:7 | 严重错误 |
25.adb shell dumpsys cpuinfo|查看应用程序消耗的CPU资源,可通过包名过滤。
adb shell dumpsys cpuinfo|findstr com.wondertek.paper
26.adb shell dumpsys meminfo|查看应用程序消耗的内存资源,可通过包名过滤。
adb shell dumpsys meminfo|findstr com.wondertek.paper
27.adb shell dumpsys battery|查看应用程序消耗的电量资源
- level: 显示当前电量
28.adb shell monkey 参数:在Android设备上执行Monkey测试。
- 在手机上随机操作100次
adb shell monkey 300
- 指定app执行monkey,操作300次
adb shell monkey -p com.wondertek.paper 300
- 指定app执行monkey,并打印详细日志
adb shell monkey -p com.wondertek.paper -v -v -v 300
- 指定app执行monkey,操作300次,并且打印详细的日志
adb shell monkey -p com.wondertek.paper -v -v -v 300 > D:\app\monkey.log
- 指定随机种子来执行monkey。这个命令通常用在monkey发现bug,修复后的回归测试。操作步骤记录在随机种子中。
adb shell monkey -p com.wondertek.paper -v -v -v -s 1663779041148 3000
- 设定延时,每个事件后延迟300毫秒
adb shell monkey -p com.wondertek.paper -v -v -v --throttle 300 3000
华为卸载预置软件
不要瞎搞!不要瞎搞!不要瞎搞!
准备
- 下载–解压缩–运行adb.exe
- 添加platform-tools文件路径到环境变量的path中
- cmd指令adb version检查版本
- 使用adb devices 与手机建立连接(手机同意,命令窗口显示device)
设备情况
- 打开开发者模式:设置-关于手机-狂点软件版本-出现提示
- 打开USB调试:设置-系统和更新-开发人员选项-打开usb调试
- 数据线连接电脑:选择传文件
- cmd 命令窗 adb devices 查看手机是否连接
- 手机下载包名查看这个软件
- 酷安搜索或者点这里
- 安装到手机上
- 启动可以看到当前手机所有软件的包名
- 在cmd窗口执行删除命令
adb shell pm uninstall --user 0 +软件包名
- 不能用adb shell uninstall 会有报错提示的
- 软件界面
- 自己酌情删除,我只是删了视频/音乐/阅读这些无关紧要的应用,
乱删除系统应用有变砖风险,
建议删除前先把安装包备份到电脑,删错了还能用指令安装一下