百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

APP测试必备技能——ADB命令(手机测试adb命令)

cac55 2024-10-21 03:44 20 浏览 0 评论

一、Android SDK环境介绍和配置

Android SDK(Software Development Kit,软件开发工具包)被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。它提供了 Android API 库和开发工具构建,测试和调试应用程序。简单来讲,Android SDK 可以看做用于开发和运行 Android 应用的一个软件。

sdk环境变量配置

  • Step1 解压SDK包
  • Step2 设置环境变量

在桌面上右键点击”计算机”图标,选择“属性”,选择高级系统设置->环境变量





其中,变量值 F:\soft\android_sdk修改为本机sdk包解压的目录;

  • Step3 在path添加路径



%ANDROID_HOME%\platform-tools;
  • Step4 检查sdk环境是否正常

在cmd下输入命令

adb

如果可以正常显示命令,则说明配置成功

二、测试机连接电脑

  • 安卓手机通过数据线连接到电脑,并且打开开发者调试模式(在手机设置里,因手机型号而位置不同,详细可以通过百度自己手机型的开发者模式);
  • 手机是否连接上电脑,可以通过adb devices来查看,如果显示no devices attached,则表示没有连接上,解决办法:建议在电脑和手机端各安装360手机助手
  • 如果手机连接不上电脑,还可以通过手机模拟器来模拟手机,安装夜神模拟器在电脑上,打开cmd,输入连接命令 adb connnect ip:端口号,操作如下图:



表示连接模拟器成功,一样可以使用各种adb命令

三、常见的adb命令

通过ADB(Android Debug Bridge),我们可以管理设备或手机模拟器的状态。还可以进行很多手机操作,如安装软件、系统升级、运行shell命令等等。其实简而言说,就是连接Android手机与PC端的桥梁,可以让用户在电脑上对手机进行全面的操作。

1、查看连接的设备 adb devices

该命令可以查看连接的adb的设备的情况,如果连接多个设备,均显示在结果中

2、查看设备连接状态 adb get-state

结果可能有三种 offline 设备连接异常, device 正常 ,unknown 没有连接设备

3、查看日志 adb logcat

查看手机日志,ctrl+c结束

可查看手机四个缓冲区日志,包括radio, system,main,event ,其中radio存放通信的日志,比如通话短信等;event是表示手机按键输出等事件日志等;main指的是手机的应用软件的日志,是应用层日志输出;system是系统组件日志

如果使用logcat不指定输出哪个缓冲区的日志,默认输出main和system的日志,如果需要指定,则使用adb logcat –b 指定缓冲区adb logcat –b main

也可以重定向输出到文件 adb logcat –b main > d:\main.log-c 清理日志

logcat 是实时日志,即在输出日志过程中,如果你操作软件,同时也会输出日志

4、adb bugreport

使用adb bugreport会 输出日志包括logcat日志,同时也包括功耗,cpu等信息日志

………………………………………………………………………..

5 、安装app应用

adb install d:/xxx.apk

其中xxx.apk是安装包名

6、卸载app应用

adb uninstall [-k]

packagename是应用包名,该包名是在开发过程中确定的,可以通过命令查看要卸载的应用包名,也可以从开发人员处获取;

adb shell pm clear

7、查看应用列表

  • 方法一 adb shell pm list packages 查看所有的应用包名



  • 方法二 adb shell dumpsys window | findstr mCurrentFocus查看正在运行的包名
  • 方法三 通过tools下的工具查看aapt dump badging x.apk

8、获取cpu信息

adb shell cat /proc/cpuinfo 获取cpu信息(processor 的编号是 0 到 3,表4核,采用的架构是 ARMv7 Processor rev 0 (v71))

9、手机电脑相互拷贝文件

adb push d:\pushlog /dev/log从电脑上推送到手机

adb pull /dev/log/error.log d:\ 从手机上下载文件到电脑

10、adb root 进入root模式

11、adb shell 进入shell命令状态

Android是基于linux内核,因此在shell状态下可以使用linux的命令

查看分辨率adb shell wm size

输出电池信息adb shell dumpsys battery

adb shell dumpsys batterystats cn.mopon.film 获取cn.monpon.film应用的耗电情况

adb shell getprop ro.build.version.release获取系统版本号

12、adb kill-server

adb start-server

重启设备

13、截屏

adb shell screencap -p /sdcard/sc.png

adb pull /sdcard/sc.png 把图片传到电脑

14、查看进程

adb shell ps

15、查看连接过的 WiFi 信息

adb shell

su

cat /data/misc/wifi/*.conf

:需要root权限

16、获取mac地址(物理地址)

adb shell cat /sys/class/net/wlan0/address

17、查看当前内存占用

adb shell cat /proc/meminfo

18、重启手机

adb reboot

19、查看 adb 版本

adb version

20、清除应用数据与缓存

adb shell dumpsys activity activities | grep mFocusedActivity
adb shell dumpsys activity activities | ps mFocusedActivity

21、强制停止应用

adb shell am force-stop

adb push <电脑上的文件路径><设备里的目录>

22、查看cpu运行情况

adb shell top -m 10 -s cpu(-t 显示进程名称,-s 按指定行排序,-n 在退出前刷新几次,-d 刷新间隔,-m 显示最大数量)

23、windows下查看端口号

netstat –ano | findstr “5037”

Linux命令状态下查看 netstat –anp | grep 5037

24、adb shell am start –n 包名/入口

启动app

25、adb shell pm clear 包名

清除应用的数据和缓存

26、adb shell imput tap x轴坐标y轴坐标

坐标点击

四、常见错误及解决办法

在输入adb命令时,显示: more than one device and emulator

解决办法:

查看设备 adb devices

C:\Users\administrator>adb devices
List of devices attached
emulator-5554 device
4dfadcb86b00cf05 device

发现还真是多个设备,那就需要为ADB命令指定设备的序列号了。

C:\Users\administrator>adb -s emulator-5554 shell

也就是如上所示,给命令加上-s的参数就可以了!

如果实际上只有一个设备或模拟器,并且查到有offline的状态;

那就说明是ADB本身的BUG所导致的,就需要用如下的方法处理下了:

C:\Users\administrator>adb kill-server
C:\Users\administrator>taskkill /f /im adb.exe

相关推荐

服务器用的CPU和个人电脑用的CPU有什么区别?一篇文章告诉你!

服务器cpu和普通cpu的区别你的电脑CPU是‘短跑健将’,服务器CPU却是‘铁人三项选手’——它不追求瞬间爆发力,而要7×24小时扛住千军万马的数据洪流!想知道为什么企业机房敢收天价服务费?答案全藏...

“吃鸡”新版本第1天,玩家进入游戏点击“立即更新”,后悔了!

欢迎诸位小伙伴们来到天哥开讲的《和平精英》“精英小课堂”~每逢两三个月,这款游戏就会迎来一次大版本迭代更新,很多朋友会在第一时间更新版本,前往全新的主题模式里一探究竟。不过也有一些老玩家并不会立刻更新...

中关村在线·aigo存储杯《无畏契约》全国高校争霸赛招募启事

以青春之名,燃电竞之火1赛事背景与宗旨在金秋送爽的9月,芊芊学子们即将回归校园生活。为了给精彩的校园生活锦上添花,由中关村在线与aigo存储联合主办的《无畏契约》全国高校争霸赛正式启幕,旨在为全国高...

【生肖狗】9.7-9.10提醒:人算不如天算,转变即是转机

九月上旬的风,带着秋意的清爽,也带着几分不可捉摸的变数。对于生肖狗的朋友们来说,9月7日到9月10日这四天,格外需要留意“计划与变化”的碰撞——你们向来习惯提前规划,做事稳妥周全...

转转客服IM系统的WebSocket集群架构设计和部署方案

本文由转转技术李帅分享,原题“转转客服IM的WebSocket集群部署方案”,下文有修订和重新排版。1、引言转转作为国内头部的二手闲置交易平台,拥有上亿的用户。用户在使用转转app遇到问题时,一般可以...

上线3天Steam好评率86%,《时间旅者:重生曙光》开启生存恐怖新篇章

这里究竟发生了什么?末日降临,真正的故事悄然启幕。目前,生存恐怖类游戏《时间旅者:重生曙光(Cronos:TheNewDawn)》已在PC(Steam、EpicGamesStore)、P...

什么神仙洗衣机让我一天有28小时?拆开松下「大四洗」藏了啥秘密

说起家庭洗衣的烦恼,想必很多人都有过类似的经历:贴身内衣要单独洗,宝宝的口水巾得小心呵护,宠物玩具怕藏污纳垢,床单被套又体积庞大,把这些东西混在一起洗担心越洗越脏,分开洗又得反复操作,洗完烘、烘完再洗...

爆料人挖出GTA6注册的奇葩域名 延续经典讽刺风格

等待《侠盗猎车手6》的日子跨越了数个春秋,在游戏圈期盼着这部可能成为史上最重磅游戏的过程中,每过一段时间就会有些许消息浮出水面。最新线索来自数据挖掘者Tez2在GTA论坛的发现,他可能偶然发现了关于...

跟着故事去旅行——读《驼峰间:旅行、探险与征服》

作者:郭冰茹《驼峰间》记录了旅行家伊本·白图泰有生之年流传的一则寓言,说一对父子被关进了监狱,有一天儿子问父亲他们每天吃的都是些什么肉,父亲说有牛、羊和骆驼,并且详细地描述了每种动物的特点。但不管父亲...

前端工程师需要熟悉的Linux服务器(SSH 终端操作)指令

在Linux服务器管理中,SSH(SecureShell)是远程操作的核心工具。以下是SSH终端操作的常用命令和技巧,涵盖连接、文件操作、系统管理等场景:一、SSH连接服务器1.基本连接...

跳票6年后,「丝之歌」首发把Steam服务器干爆了 | 玩点好的

文丨果脯樱花隧道昨天晚上22点,「鸽」了6年的《空洞骑士:丝之歌》终于上线,算是了却不少玩家的执念。毕竟,这款游戏实在让人等了太多太多年,而且曾有过多次定档后跳票的「案底」,不知道把多少人都整出了P...

对标魔兽失败!腾讯版“魔兽”运营一年多后,宣布国际服凉凉

大家好,这里是正惊游戏,我是正惊小弟。有很多游戏都想干掉《魔兽世界》,但是大部分魔兽杀手都知道自己不是魔兽的对手,不过是想蹭一下人气而已。腾讯也有一款曾经想对标魔兽的大作,可是上线才一年半国际服就宣布...

408 Request Timeout:服务器等待客户端发送请求的时间过长。

408RequestTimeout是HTTP状态码之一,表示客户端在发送请求时,服务器等待的时间过长,最终放弃了处理该请求。此问题通常与网络延迟、客户端配置、服务器设置或者应用程序的性能有关...

梦幻西游:9.9维护解读,全新时间服锁定129级

梦幻西游:9.9维护解读,全新时间服锁定129级9月9日维护解读。1、教师节活动开启,一共7天。挂机,答题,收笔墨纸砚,收海马,搞起来。或者是提前收点家具,教师节期间体力珍贵,家具会涨价。又或者是教师...

只是拆掉一面墙,空间就立马大变样,这种设计思路,值得学习

你有没有过这样的经历?刚买的房子户型图看起来方方正正,装修完却发现——玄关鞋柜只能塞在角落,进门就撞墙;餐厅正好在过道中间,吃饭像走流程;明明有四个房间,却有一个空着没用,像块食之无味的鸡肋;客餐厅之...

取消回复欢迎 发表评论: