首页 > 其他分享 >掌握ADB:详解操作命令及完整用法指南(二)

掌握ADB:详解操作命令及完整用法指南(二)

时间:2024-04-01 17:46:55浏览次数:18  
标签:shell 操作命令 am adb 用法指南 ADB pili input com

前言

ADB,全名Android Debug Bridge,是Android提供的一个通用的调试工具,是一个C/S架构的命令行工具,通过这个工具,使得我们的PC能够和Android设备来进行通信。之前一篇文章我们介绍了adb安装以及一些adb的基础命令,本文我们将介绍一些我们在进行app自动化测试时经常使用到的命令。

adb shell am命令

amActivity Manager的缩写,即活动管理,我们可以使用am来控制设备执行各种操作。如下:

# 使用am命令来启动淘宝App
adb shell am start com.taobao.taobao/com.taobao.tao.TBMainActivity

还可以用来获取应用的启动时间,如下:

adb shell am start -W com.qiniu.pili.droid.shortvideo.effect.demo/com.qiniu.pili.droid.shortvideo.demo.activity.MainActivity
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.qiniu.pili.droid.shortvideo.effect.demo/com.qiniu.pili.droid.shortvideo.demo.activity.MainActivity }
Status: ok
Activity: com.qiniu.pili.droid.shortvideo.effect.demo/com.qiniu.pili.droid.shortvideo.demo.activity.MainActivity
ThisTime: 289
TotalTime: 289
WaitTime: 311
Complete

以毫秒为单位
点击图标然后松开,这个时间是系统时间(分配内存和CPU的时间),应用application等待资源启动的时间
ThisTime:为界面启动耗时
TotalTime:应用自身启动耗时=ThisTime + 应用application等资源启动时间
WaitTime:系统启动耗时=TotalTime + 系统资源启动时间

获取包名和界面名

 adb shell dumpsys window | grep mFocusedApp
 或者
 adb shell "dumpsys window | grep mCurrentFocus"

注:App的包名是唯一的,不可重复的。

adb模拟手机按键

在使用adb模拟手机按键之前,我们需要先做好设置,设置路径为:设置——开发者选项——指针位置,我们可以先运行adb shell input命令来查看如何模拟手机按键:

# 首先连接设备
adb connect 127.0.0.1:7555
connected to 127.0.0.1:7555
# 执行命令
adb shell input
Usage: input [<source>] <command> [<arg>...]

The sources are:
      mouse
      keyboard
      joystick
      touchnavigation
      touchpad
      trackball
      stylus
      dpad
      touchscreen
      gamepad

The commands and default sources are:
      text <string> (Default: touchscreen)
      keyevent [--longpress] <key code number or name> ... (Default: keyboard)
      tap <x> <y> (Default: touchscreen)
      swipe <x1> <y1> <x2> <y2> [duration(ms)] (Default: touchscreen)
      press (Default: trackball)
      roll <dx> <dy> (Default: trackball)

操作示例如下:

- 模拟点击事件
adb shell input tap x坐标 y坐标
adb shell input tap 528 1539

- 输入文本
首先需要把光标移到输入框,然后执行以下命令
adb shell input text zengzengzeng

- 模拟滑动事件
adb shell swip <起点x> <起点y> <终点x> <终点y> <滑动时长>
adb shell input swipe 520 331 520 1017 2000
2000为滑动时间,单位是毫秒

- 返回键
adb shell input keyevent 4

- 返回home键(置应用于后台)
adb shell input keyevent 3

- 音量放大
adb shell input keyevent 24

- 音量缩小
adb shell input keyevent 25

资源占用情况

我们也可以使用adb命令查看设备的CPU、内存等资源使用情况,如下:

# 查看当前系统CPU使用情况
adb shell dumpsys cpuinfo
获取的是一段时间的均值

# 进程占用情况

adb shell top 
adb shell top | grep "包名" —— 查看某个包的一些性能
adb shell top -d 1 |grep "包名"

# 内存使用情况
adb shell dumpsys meminfo

总结

本文主要介绍了adb的一些高级用法,adb shell am以及相关命令对我们在使用appium进行App自动化测试时有很大的帮助,可以帮我们快速定位应用及活动名称,一些性能指标查看命令也可以帮助我们更好地执行App测试,希望本文能够帮到大家。

标签:shell,操作命令,am,adb,用法指南,ADB,pili,input,com
From: https://www.cnblogs.com/hogwarts/p/18108995

相关文章

  • ADB 操作命令详解及用法大全
    ADB(AndroidDebugBridge)是用于在计算机和Android设备之间进行通信的命令行工具。它可以用于调试和测试Android应用程序,以及在计算机上执行各种操作。以下是一些常用的ADB命令及其用法:adbdevices用途:列出连接到计算机的所有Android设备。示例:adbdevicesadb......
  • adb详细介绍(1)
    ADB的全称为AndroidDebugBridge,顾名思义就是起到调试桥的作用,也可以说是连接一个客户端(这里指用来操作的电脑)到服务器端(这里指Android设备)程序(一种工具)。ADB可以对Android真机或者手机模拟器进行操作管理、文件传输、卸载安装等操作。多的先不介绍了,今天先给大家干货走起,后......
  • 三、 mariadb数据库用户管理
    1)查询有哪些用户MariaDB>selectuser,hostfrommysql.user;+------+-----------+|user|host   |+------+-----------+|root|127.0.0.1||root|::1   ||   |localhost||root|localhost||   |oldboy  ||root|oldb......
  • 使用 adb 命令修改 Android/data 目录下的文件(给碧蓝档案国服吃布丁)
    本文记录如何使用adb命令修改Android/data目录下的文件,然后给国服的碧蓝档案打上布丁......
  • https://github.com/google/adb-sync
    大致的实现方式:是一个python文件,在windows上就pythonadb-sync-R-t-n--dry-run/storage/emulated/0C:\a\b这样运行 其中本机系统的文件列表和修改时间获取就用os库(importos)手机上的文件列表和修改时间获取就用ls-al     https://blog.csdn.net/chabb/ar......
  • Android 逆向(四) - adb常用逆向命令
    Android逆向(四)-adb常用逆向命令本篇文章继续记录下adb的一些常用逆向命令.1:adbshellps该命令可以查看进程信息.用法:adbshellps|grep[pname]zh@zh:~/workSpace$adbshellpsUSERPIDPPIDVSZRSSWCHANADDRSNAME......
  • 35_安装mariadb
    1.安装mariadb#1.安装[root@mysql1~]yum-yinstallmariadb-server[root@mysql1~]#systemctlstartmariadb[root@mysql1~]#systemctlenablemariadbCreatedsymlink/etc/systemd/system/mysql.service→/usr/lib/systemd/system/mariadb.service.Createdsy......
  • ADB 下载、安装及使用教程:让你更好地管理 Android 设备
    简介作为一名测试工程师,我们经常需要在我们的Android设备上进行调试、管理或者定制。而Android调试桥(ADB)是Google官方提供的工具,可以帮助我们在计算机上与Android设备进行通信和控制。本教程将带领你一步步学习如何下载、安装和使用ADB,让你更好地管理你的Android设备......
  • 常用的ADB命令
    常用命令adbdevices #查看连接设备adbinstalltest.apk#安装包adbuninstalltest.apk#卸载包adbconnect192.0.0.1:7555#通过端口连接MUMU模拟器adbdisconnect 192.0.0.1:7555#断开连接adbshell#进入设备终端adbshelldf#查看设备磁盘空间占用情况adbshe......
  • mysql 5.7安装mariadb审计插件
    官方文档:https://mariadb.com/kb/en/mariadb-audit-plugin/参考文档:https://segmentfault.com/a/1190000042056617下载10.5版本的mariadb,再高的版本不适合5.7 1、下载mariadb下载界面:https://dlm.mariadb.com/browse/mariadb_server/101/1956/bintar-linux-x86_64/root......