adb常用命令

adb常用命令(1)

  1. adb -help :查看帮助手册

adb shell描述
2. adb devices :检测连接到电脑的安卓设备

adb devices
打开夜神模拟器,之后记得在命令行窗口输入adb connect 127.0.0.1:62001,回车,可以发现已成功连接上设备(夜神模拟器)
adb connect 127.0.0.1:62001
adb devices
3. adb pull<手机路径><本机路径>:从手机拉取信息放到本地电脑

本机路径容易获取,但是手机路径如何获取呢?可以使用adb shell命令来获取
获取手机路径
之后可以使用ls命令,来列出当前根目录下的文件和目录信息。sdcard手机的内部存储,因此我们主要查看sdcard目录即可。
在这里插入图片描述
那么如何查看sdcard目录下的文件信息呢?
可以通过cd sdcard命令来切换到sdcard目录

在这里插入图片描述
不过由于我还未在手机收进行任何操作,因此我的sdcard目录下没有任何文件信息,如果有文件,是会在窗口中显示出来的

  1. adb push<本机路径><手机路径>:从本地推送信息到手机上

比如想把电脑上的微信推送到手机上,可以输入adb push 本机路径可以直接拖拽想要推送的文件或其他软件(这里是微信)到CMD窗口,后面加上手机路径,比如把它放在sdcard目录中

sdcard 后面的斜杠不能少,否则会出现下面的错误:
在这里插入图片描述
However!会发现报错:failed to copy ‘C:\Users\Public\Desktop\微信.lnk’ to ‘/sdcard’: Is a directory

这是因为,我们推送的放在了文件里!而不是目录。“/sdcard”代表一个文件而不是一个目录应该在sdcard后加"/"–>"/sdcard/"
在这里插入图片描述
在这里插入图片描述
5. adb logcat–打印日志

在这里插入图片描述
可以通过重定向来将日志保存到指定的文件中
比如将其保存到G盘的一个文件adb logcat > G:\log\logcat.txt
但是在这之前要先将日志文件终止
通过Ctrl+c组合键来终止日志的获取
在这里插入图片描述
在这里插入图片描述

上面演示的是通过模拟器来演示通过adb对android app 的测试,那如果是真机呢?
真实android手机连接adb:

  1. 通过usb线直接连接到电脑;
  2. 下载安装Android手机驱动(可以下载驱动精灵、手机助手等软件)
  3. 在手机找到设置–>开发者模式–>usb调试
  4. 在弹出的对话框中选择“允许”

adb常用命令(2)

  • adb install xxx.apk ----为了获取apk的安装包所在地址,可以直接把apk拖到cmd窗口获取,返回succes就代表成功了。
  • adb install -r xxx.apk —保留数据和缓存文件,重新安装apk。
  • adb uninstall (应用的包名) —卸载应用
  • adb uninstall -k (应用的包名) —卸载应用但保留数据和缓冲
  • adb shell dumpsys activity | find “mFocusedActivity” —查看前台应用activity名
  • adb connect/disconnect 通过wifi进行远程连接手机进行调试

应用的包名可以通过**adb shell dumpsys activity | find “mFocusedActivity”**命令来获取,具体操作可以参考我的另一篇博客使用monkey进行Android APP压力稳定测试入门

真实的android手机WiFi远程调试

  1. 通过usb线将手机连接到电脑;
  2. adb devices 能够检测到对应的设备
  3. adb tcpip 5555 确定手机和电脑端的wifi通讯端口
  4. 拔掉usb线,再通过adb connect 自己手机IP地址

如:adb connect (手机的IP地址)l连接成功后即可通过adb shell 来操作手机对app进行测试
前提条件,手机和电脑要处于同一个内网,即要连接同一个WiFi

adb shell 命令

adb 命令和 adb shell 命令的区分
adb 命令是 adb 这个程序自带的一些命令,而 adb shell 则是调用的 Android 系统中的命令,这些 Android 特有的命令都放在了 Android 设备的 system/bin 目录下。

adb shell—登录设备shell(命令行的人机界面)

  • 查看wifi密码: adb shell cat /data/misc/wifi/*.conf

  • 列出安装在设备上的应用的包名:adb shell pm list package
    (不带任何选项:列出所有的应用的包名)

在这里插入图片描述

  • -s:列出系统应用:
    adb shell pm list package -s

在这里插入图片描述

  • -3:列出第三方应用
    adb shell pm list package -3

在这里插入图片描述

  • -f:列出应用包名及对应的apk名及存放位置
    adb shell pm list package -f
    结果显示:package:/system/app/SoundRecorder.apk=com.android.soundrecorder

  • -i:列出应用包名及其安装来源:
    adb shell pm list package -i
    结果显示例子:
    package:com.android.soundrecorder installer=null
    命令最后增加 FILTER:过滤关键字,可以很方便地查找自己想要的应用

  • 参数组合使用,例如查找第三方应用tencent的包名、存放位置及安装来源:
    adb shell pm list package -f -3 -i tencent

在这里插入图片描述

  • pm path 列出对应包名的 .apk 位置
    adb shell pm path com.tencent.mm

在这里插入图片描述

  • pm list instrumentation , 列出含有单元测试 case 的应用,后面可跟参数 -f (与 pm list package 中一样),以及 [TARGET-PACKAGE]

  • pm dump , 后跟包名,列出指定应用的 dump 信息,可查看应用的各种信息
    (建议最好重定向到指定文件,不要在cmd窗口查看信息,因为文件可能会很长)
    adb shell pm dump com.tianwen,jjrp > G:\log\tainwenDetail.txt

  • pm install , 安装应用
    目标 apk 若是存放在 PC 端,用 adb install 安装
    目标 apk 若是存放于 Android 设备上,用 pm install 安装
    如:
    pm uninstall , 卸载应用,同 adb uninstall , 后面跟的参数都是应用的包名
    pm clear , 清除应用数据
    pm set-install-location , pm get-install-location , 设置应用安装位置,获取应用安装位置

am命令

  • am start :启动一个 Activity,这里以启动我们设备的“设置”应用为例
    adb shell am start -n com.android.settings/.Settings
    cmd输出
    Starting: Intent { cmp=com.android.settings/.Settings }
  • 若不清楚“设置”的包名,可以通过命令
    adb shell dumpsys activity | find “mFocusedActivity”

先找出当前开启的设备,然后复制路径即可(不过这样一来,可能有人会说,那还要这命令有何用?自己手动打开不就好了吗,打开了还要手动关闭,再在命令行打开……我也只能说,装逼用~哈哈哈)

在这里插入图片描述

  • input text : 发送文本内容,但是改命令无法发送中文
    adb shell input text [文本内容(英文)]
    如图

在这里插入图片描述

  • input tap :对屏幕发送一个触摸事件
    点击屏幕上座标为 200 200 的位置
    adb shell input tap 200 200
  • input keyevent ,:发送按键事件
    adb shell input keyevent

先介绍到这里啦~还有关于monkey命令的,可查看使用monkey进行Android APP压力稳定测试入门

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章