adb常用命令

2023-06-08  本文已影响0人  E术家
adb的全称为Android Debug Bridge
C:\Users\lenovo>chcp 65001   

切换至UTF-8

C:\Users\lenovo>adb devices
List of devices attached
127.0.0.1:62001 device

adb devices:查看设备
adb tcpip 端口号:设置端口号
adb connect ip地址:端口号:连接至指定设备

C:\Users\lenovo>adb -e shell
root@shamu:/ #exit

shell:连接并打开对应设备的shell
-e:连接至模拟器
-d:连接至真机
-s 设备地址:端口:连接至指定设备
exit:退出shell

C:\Users\lenovo>adb shell
root@shamu:/ # ll / > /storage/emulated/legacy/Download/1.txt

将数据存放至模拟器的文件中,只能放至在模拟器中

C:\Users\lenovo>adb shell ls -l / > D:/1.txt

不进入shell把内容输出,只能输出至本地
1> 文件路径输出正常信息数据,1可以省略
2> 文件路径输出错误信息数据
1> 文件路径 2>&1将错误信息合并至正常信息中

C:\Users\lenovo>adb logcat

logcat:查看日志,默认实时更新
--help:查看命令帮助
-c:清空应用软件日志
-d:输出应用软件日志并退出
-v 格式:按xx格式显示日志
adb logcat -d -v time *:V > 本地文件
通常将日志导出到本地,用于查询崩溃信息
标签等级
D调试 I信息 W告警 E错误 F致命错误 S安静
crash当app闪退崩溃时,就有crash日志
ANR安卓无响应
display查看界面的显示和用时
F等级基本都是致命错误

C:\Users\lenovo>adb install C:\Users\lenovo\Desktop\ECMobile3.2.apk
[100%] /data/local/tmp/ECMobile3.2.apk
        pkg: /data/local/tmp/ECMobile3.2.apk
Success

adb install xxx.apx:安装软件
adb uninstall 包名:卸载软件

C:\Users\lenovo>adb pull /storage/emulated/legacy/Download/1.txt C:\abc\temp.log
[100%] /storage/emulated/legacy/Download/1.txt

adb pull 手机路径文件 PC端路径\文件名,文件夹不加\会判定成文件 —— 将手机端的文件复制到PC本地

C:\Users\lenovo>adb push C:\abc\a.log /storage/emulated/legacy/Download/233.log
[100%] /storage/emulated/legacy/Download/233.log

adb push PC文件名 手机端路径 —— 复制本地文件至手机端

adb remount:获取对系统级文件修改的权限

root@shamu:/ # screencap -p /storage/emulated/legacy/Download/123.png

screencap -p 手机路径:截屏并存放之固定路径

包管理器pm
root@shamu:/ # pm list packages | grep seafile
package:com.seafile.seadroid2

adb shell pm path 包名:看app的安装路径
pm list packages:查看设备上安装的所有包,部分版本不支持需要使用下一个
cmd package in packages:查看设备上安装的所有包,部分版本不支持需要使用上一个
pm dump 包名:包的信息

C:\Users\lenovo>adb shell pm uninstall com.seafile.seadroid2
Success

pm uninstall 包名:卸载软件

活动管理器am

adb shell am start activity名:启动一个界面,但要注意大多数app的界面都需要接收数据才能打开,所以一般只能打开首页
adb shell am startservice 服务名:启动一个服务
adb shell am stopservice 服务名:停止一个服务
adb shell am force-stop 包名:强制关闭一个程序的界面
adb shell am kill 包名:清除该包内存,也达到关闭程序作用

输入操作input

adb shell input tap x坐标 y坐标:在屏幕上点击一个坐标
adb shell input text 文字:做文字输入,输入到哪个文本框,需要先执行点击
adb shell input keyevent 按键编号:不同按键编号对应不同操作功能
adb shell input swipe x1 y1 x2 y2:滑动,从坐标1到坐标2

随机操作命令monkey
C:\Users\lenovo>adb shell monkey --h
** Error: Unknown option: --h
usage: monkey [-p ALLOWED_PACKAGE [-p ALLOWED_PACKAGE] ...]
              [-c MAIN_CATEGORY [-c MAIN_CATEGORY] ...]
              [--ignore-crashes] [--ignore-timeouts]
              [--ignore-security-exceptions]
              [--monitor-native-crashes] [--ignore-native-crashes]
              [--kill-process-after-error] [--hprof]
              [--pct-touch PERCENT] [--pct-motion PERCENT]
              [--pct-trackball PERCENT] [--pct-syskeys PERCENT]
              [--pct-nav PERCENT] [--pct-majornav PERCENT]
              [--pct-appswitch PERCENT] [--pct-flip PERCENT]
              [--pct-anyevent PERCENT] [--pct-pinchzoom PERCENT]
              [--pkg-blacklist-file PACKAGE_BLACKLIST_FILE]
              [--pkg-whitelist-file PACKAGE_WHITELIST_FILE]
              [--wait-dbg] [--dbg-no-events]
              [--setup scriptfile] [-f scriptfile [-f scriptfile] ...]
              [--port port]
              [-s SEED] [-v [-v] ...]
              [--throttle MILLISEC] [--randomize-throttle]
              [--profile-wait MILLISEC]
              [--device-sleep-time MILLISEC]
              [--randomize-script]
              [--script-log]
              [--bugreport]
              [--periodic-bugreport]
              COUNT

-p 包1 -p 包2 .....:指定打开的包
-v -v -v:日志详细程度,一个v最简约,3个V最详细, -vvv
--throttle 毫秒数:表示2个操作之间的间隔时间
-s 数字:表示种子数,即当出现错误时,错误重复执行几次
--ignore-xxx:各种忽略异常
--pct-xxx:各种操作百分比
--throttle 毫秒数:表示2个操作之间的间隔时间
adb shell monkey 各选项 次数 1> 执行文件 2> 错误文件

日志

adb shell dmesg:内核日志
adb bugreport:安卓app代码调试和分析
adb shell dumpsys 服务名:查看系统服务信息,偏硬件
adb logcat [选项]:应用日志

aapt

android asset packaging tool,安卓打包工具
aapt list -v apk文件:列出apk文件中的所有包内文件,用于安装测试中的安装前的包文件检查
aapt dump WHAT apk文件badging显示包中的基本信息 permissions显示权限信息
aapt package [选项] 打包文件 包名:打包
aapt add [选项] 打包文件 包名:往包中添加文件
aapt remove [选项] 包中文件 包名:包中移除文件
aapt version:查看版本号

查看app启动时间

关闭app
命令行清空旧日志
C:\Users\lenovo>adb logcat -c

adb logcat -c

打开app
获取启动时间
C:\Users\lenovo>adb logcat -d | findstr "Displayed"
07-08 11:52:11.569  2100  2120 I ActivityManager: Displayed com.seafile.seadroid2/.ui.activity.UnlockGesturePasswordActivity: +506ms (total +621ms)

adb logcat -d | findstr "Displayed"

上一篇 下一篇

猜你喜欢

热点阅读