appium拓展(一)adb

下载Android studio后,在platform-tools会有adb.exe,用来连接手机,可以使用adb命令执行一些简单的操作,首先要将adb配置到环境变量path中

1.连接mumu模拟器

  连接mumu模拟器:adb connect 127.0.0.1:7555(Mumu模拟器的端口,其他模拟器端口请自行百度),如果连接不上,替换模拟器的adb(路径 E:MuMuemulator emuvmonitorin),保持和

Android studio中的一致

  使用夜神模拟器时,连接到pc端要注意:

    1、检查夜神模拟器安装目录下bin文件夹中的nox_adb.exe文件的adb版本,确认是否和sdk环境变量中的adb版本一致。

    2、如果不一致,将sdk的platform-tools中的adb.exe文件,复制并改名为nox_adb.exe,然后替换夜神bin目录下的nox_adb.exe

    3、尝试用adb connect 127.0.0.1:62001或者127.0.0.1:52001连接夜神。

   连接真机注意问题

    1、建议将360手机助手之类的工具卸载,至少关闭。

    2、确认手机和电脑连接,能够传输文件,确保驱动已经正常安装。

    3、手机上打开开发者调试模式,找到手机信息,点击版本号5次,直到打开开发者调试模式,勾选允许usb调试。

    4、完成上述三步之后,adb连接设备时,应该能找到真机了,但是可能是unauthorized状态,这时,需要在弹出的rsa密钥验证选择通过。

    5、如果出现offline,可能需要配置用户目录下.android文件中的adb_usb.ini,在其中加入硬件设备硬件id的vid后的4位串码,前面加上一个0x。

  断开链接:adb disconnect

2.设备管理

  adb devices  查看连接设备

  adb start-server / adb kill-server  启动 / 停止adb服务

  adb –s <deviceName>  指定设备进行操作,如果只有一个设备,则不需要

  adb connect <deviceName>     连接指定设备,如果只有一个设备,则不需要

  adb shell,进入Android系统,可以查看Android设备的文件结构,Android操作命令类似Linux,exit 退出,

3.APP管理

  adb push/ pull fromPath toPath  在PC和手机之间复制文件,如 将安装包复制到Android设备 adb push e:/apks/baidusearch_AndroidPhone_757p.apk /data

  adb install <apk文件名> 安装应用到手机,如 adb install e:/apks/baidusearch_AndroidPhone_757p.apk 

  adb uninstall <包名> 卸载手机上的应用,如 adb uninstall com.baidu.tieba,下面会讲到如何获取APP的包名

4.pm命令   package manager 包管理命令

  adb shell pm list package [-s系统应用] [-3第三方应用] [-f 列出应用包名及apk存放地址] ,列出设备上的应用包名,如 下图

  adb shell pm install /uninstall 安装/卸载存放在设备上的包名,不常用,一般使用 adb install / uninstall

5.am命令   activity manager(adb启动手机上的某一个应用)

  adb shell am start [-W等待启动] [-S关闭后重启] <Activity名> 启动Activity(通常一个app上面的界面就是一个Activity,下面将讲到如何获取activity),如 

 adb shell am start -W -S com.baidu.tieba/.tblauncher.MainTabActivity

  am start –a android.intent.action.VIEW –d http://www.baidu.com  启动浏览器访问百度

  adb shell am force-stop <包名>,关闭APP

6.dumpsys命令

  adb shell dumpsys 查询系统服务信息(查看activity),包括系统服务和其他应用的服务,非常多,一般会添加参数过滤

  adb shell dumpsys activity |findstr “mFoc” 查找当前交互的界面(正在运行的应用的activity),如下图圈中部分,就是正在运行的百度贴吧的 activity

 7.input命令

  adb shell input text <text> 输入文本

  adb shell input keyevent <KEYCODE> 模拟按键操作,KEYCODE太多,下面会将相关参考贴上

  adb shell input tap <X,Y> 模拟点击,X,Y为坐标

  adb shell input swipe <X0,Y0,X1,Y1,TIME> 模拟滑动屏幕

PS:如何获取手机中某一位置的坐标:

  要获取手机的坐标位置,需要在开发者选项中打开指针位置,开发者选项中通过指针位置选项可以获取到坐标位置。

8.logcat  获取日志命令

  adb shell logcat –v time(日志显示时间) > [pc路径]  , 获取日志并将日志保存到指定文件

  在Android路径下的  /data/anr/traces.txt,手机运行期间中的各种anr(application not response)日志

9.附上各种命令的参考

  常用adb命令:https://www.cnblogs.com/bravesnail/articles/5850335.html

  adb模拟按键事件 KeyCode :https://blog.csdn.net/jlminghui/article/details/39268419

  logcat命令详解以及log解析:https://blog.csdn.net/liao277218962/article/details/50129009

  Android系统文件目录结构:https://blog.csdn.net/HTYBAY/article/details/44338857

原文地址:https://www.cnblogs.com/yjh1995/p/12063999.html