美文网首页
adb常用命令

adb常用命令

作者: E术家 | 来源:发表于2023-06-08 18:54 被阅读0次
    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"

    相关文章

      网友评论

          本文标题:adb常用命令

          本文链接:https://www.haomeiwen.com/subject/bncaedtx.html