【无标题】

adb命令(常用命令)

pwd:查看路径。
cd /data/data;进入路径下
ls;(陈列出来)
touch 文件.后缀:创建一些文档
echo ‘hellow’>文件.后缀:写hellow到文件中
adb shell cat 文件.后缀 :查看文件内容;
pwd:查看

1、adb基础。
什么是adb,Android debug bridge。测试安卓的调试桥。模拟器类似真机,模拟安装等等。 adb工作原理:采用客户端-服务端(c/s)模型,分三个部分,(pc端)客户端client,服务端server,(手机上)守护进程daemon。

2、adb环境搭建。
1.Java1.8环境+sdk环境。 有个链接 。
2.Jdk环境下载安装。安装贴:
https://ceshiren.com/t/topic/7306
Java官方下载地址:
https://www.oracle.com/cn/java/technologies 1.8的版本
/javase/javase-jdk8-downloads.html
注:windows下exe安装包即可
社区下载地址:
http://pan.baidu.com/s/1OCmnYJnBeUagjRiVCm6cSg x2gb
3.配置java环境变量:
Java_home:jdk安装根目录
Path:
Java_home%
Java_home%\bin
Java_home%\jre\bin
验证环境:java -version
4.sdk下载
官方下载:https://developer.android.com/studio/releases/platform-tools
5.配置sdk环境:
Android_home D:\adt-bundle-mac-x86_64\sdk
Path %Android_home\tools;%Android_home\platform-tools
6.检查:adb shell

3、连接手机设备、查看设备状态、启动adb服务。
1、测试机型选择:模拟器,真机。
模拟器下载(官方Android studio emulator,genymotion(依赖外网络),第三方mumu、雷电等等)。
2、连接mumu模拟器:(不同模拟器不同连接方式)
Windows:
adb connect 127.0.0.1:7555 (注 ip:接口号);
adb devices;
mac:
adb kill-server;
adb devices;
3、连接真机:
(手机)设置-关于手机-连按6下出现开发者选项-usb调试。
(电脑)安装手机驱动
4、连接状态种类:(查看手机连接状态adb device或adb get-state)
device:正常;offline:连接异常,设备没响应;unauthorized:未授权。

4、adb命令格式,安装卸载包。
1、格式:adb [-d或-e或-s ]
三部分组成。
-d指定当前唯一通过usb连接的Android设备为指令目标;
-e指定当前唯一运行的模拟器为命令目标;
-s指定相应的设备为命令目标。(重点)(有多台设备时)

2、普通安装:
adb install apk路径;
adb install -s 192.168.57.103:5555 install apk路径;(当有多台时,指定某一台设备)
3、覆盖安装/替代安装:
adb install -r apk路径;
4、卸载应用:
adb uninstall 包名;()包名特定指的
5、卸载应用(不删除配置文件,保留缓存数据 ):
adb uninstall -k 包名;
6、查看路径:
adb shell;
adb -s 192.168.57.103:5555 shell;
cd /data/data;进入路径下
ls;(陈列出来)

5、adb启动页面。
1、*包和activity(活动页)的概念:
package包:Android应用的唯一标志;
activity活动页:Android应用页面,一个页面就是一个activity;
2、**获取当前页面名。打开手机app应用某个页面;打开命令行工具,执行命令:
adb shell “dumpsys window | grep mCurrentFocus”
3、**获取启动页面的activity命令:(先打开页面/启动应用,在启动命令)
mac:adb logcat ActivityManager:I | gerp “cmp”
win:adb logcat ActivityManager:I | findstr “cmp”
4、**启动当前页面:(先启动命令,在打开页面/启动应用)
adb shell am start -n <包名> /<activity名>
如:
adb shell “dumpsys window | grep mCurrentFocus”;
mCurrentFocus=Window{18a676b u0
com.tencent.mobileqq/com.tencent.mobileqq.activity.LoginActivity};
注:包名/页面名。
adb shell am start -n com.tencent.mobileqq/com.tencent.mobileqq.activity.LoginActivity ;

6、如何清理应用缓存:
1、Android的底层操作系统是linux,就可使用各种各样的adb shell、linux命令,从而操作手机。
展示目录下的文件:adb shell ls
查看系统当前日期:adb shell date
擦好看系统cpu使用情况:adb shell cat/proc/cpuinfo
查看系统内存使用情况:adb shell cat/proc/meninfo
adb shell:进入手机内环境。
root@x86:/# 表示:root用户;x86系统;/是根目录;#号后可敲各种命令;
cd /data/data 表示:进入;根目录下;
exit 表示:退出去,
ls:访问他们的目录,
clear:清空下

如何查看应用列表:
显示所有应用:adb shell pm list packages
显示系统自带应用:adb shell pm list packages -s
显示第三方应用:adb shell pm list packages -3
清除应用数据及缓存:adb shell pm clear <包名>
注:
pm :(package manage)包管理
am:(activity manage)页面管理

7、电脑和手机传输文件:
adb push 电脑路径 设备路径:电脑(主)推什么(电脑路径的东西)到设备;
adb pull 设备路径 电脑路径:电脑(主)拉什么(设备路径的东西)到电脑;
touch 文件.后缀:创建一些文档
echo ‘hellow’>文件.后缀:写hellow到文件中
adb shell cat 文件.后缀 :查看文件内容;
pwd:查看

8、查看日志:
1、日志的级别:
V:明细verbose(最低优先级,输出所有内容)
D:调试debug
I:信息info
W:警告warning
E:错误error
F:严重错误fatal
S:无记载silent(最高优先级,不输出任何内容)
补充:
安卓系统的日志缓存满了会覆盖,每时刻操作都会产生日志。

表示重定向一个文件

2、adb查看日志及常用参数:
adb logcat:日志获取。日志格式:时间 进程号 副进程号 级别 tag标签(进程) :日志的详细细节。
adb logcat -v time:打印时间;
adb logcat -v color:使用不同颜色来显示每个优先级;D是蓝色,E是红色,
adb logcat -f :将日志输出到手机端文件;
adb logcat >log.log :保存日志到pc上;>表示重定向一个文件;
adb logcat -c:清理已存在的日志;

3、根据条件过滤日志:
adb logcat -v time “:W”
表示:打印warning级别上的日志,并显示时间;
adb logcat ActivityManager:D ‘
:S’
表示:过滤tag为ActivityManager,将ActivityManager相关的日志打印出来;level为debug及以上级别的日志,将debug及以上级别的日志打印出来;
adb logcat ‘:W’
表示获取warning及以上的日志;
注:“
:W”表示“tag:level”;*表示任何一个tag标签;W代表warning级别;

9、adb模拟按键格式:
1、打开指针位置设置。
##2846579## 工程菜单里 。
执行adb shell input命令/模拟手机按键。
adb shell input text 输入内容:模拟输入文本文件,前提光标放在输入框里面。
adb shell input tap 横坐标 纵坐标 :模拟点击
adb shell input swipe 起点横坐标 起点纵坐标 终点横坐标 终点纵坐标 滑动时长毫秒单位:模拟滑动
adb shell input keyevent 4:模拟返回键
adb shell input keyevent 3:模拟返回home键
adb shell input keyevent 24:模拟音量放大键
补充:https://developer.android.com/reference/android/view/KeyEvent 可以查找对应的按键key值。

10、查看性能指标:
1、dumpsys 命令:(获取最大最小平均值)
查看当前系统cpu使用情况:adb shell dumpsys cpuinfo
查看当前系统内存memery:adb shell dumpsys meminfo
查看某个应用内存:adb shell dumpsys meminfo 应用包名

2、Top命令:(实时获取性能状态)
Mac/linux:Adb shell top | grep “包名”:查看包的一些性能指标。
Windows:adb shell top | findstr “包名”
Adb shell top -d1| grep “包名”:每隔一秒

3、电池电量:
命令:Adb shell dumpsys battery
参数指标:
Max charging:2 、、最大充电电流;毫安mA;
Status:2 、、电池状态:2为充电状态,其他数字为非充电状态;
Health:2、、健康状态2为good;
Percent:true 、、是否安装在身;
Level:81、、电量百分比;
Voltage:4108、、电池电压;
Temperature:353、、电池温度,单位0.1摄氏度;
Technology:Li-poly、、电池种类;
性能相关具体用法网站:
https://developer.android.com/docs

11、Adb 命令实现monkey压力测试。
1、什么是monkey:Monkey是google提供一个用于稳定性和压力测试的命令行工具。
2、为什么做压力测试:随机性、完整性、持续性。
3、添加执行和查看事件压力测试:
Adb device;查看有无链接设备
adb shell monkey 事件数;添加执行事件数(一般放命令最后)。
adb shell monkey 参数 随机发送事件数:
adb shell monkey -v 随机发送事件数:打印详细日志。查看随机事件的-v打印详细内容;-vv更详细;-vvv更更详细;
补充:事件数怎么得出。如:执行8小时,则86060*1000/300 时间毫秒数总数/每隔300毫秒发送一个请求。

4、monkey测试停止条件:指令执行完毕/遇到崩溃异常/杀掉进程。
补充adb实战操作命令:
ctrl+c或ctrl+d:退出进程。
adb shell:进入手机内环境下。
ps | grep monkey: ps查看linux哪些进程在跑。
出现root 1936 257 1335,,,,,:第一个为进程号。
出现root 1937 257 1335,,,,,:第一个为进程号。
kill 1936:杀死进程号。
kill 1937:杀死进程号。
exit:退出执行。

5、运行某个包。
adb shell monkey -p 包名 事件数:执行某一个包名的应用。
adb shell monkey -p 包名 -p 包名 事件数:同时执行某两个包名的应用。

6、指定事件时间间隔。(防止在一个页面进行压力测试)
adb shell monkey -p 包名 --throttle 时长 事件数:单位毫秒如时长300为0.3秒
命令:adb shell monkey -p 包名 -p 包名 --throttle 时长 -s 315311 -vvv 事件数;

7、设置种子数。
事件出错了,可查看日志种子seed=315311,再输入添加命令-s 315311,再次执行。
命令:adb shell monkey -p 包名 -p 包名 --throttle 时长 -s 315311 -vvv 事件数;

8、设置事件比例。
1.常用参数:
–pct-touch:触摸事件(指定点击事件百分比)
–pct-motion:滑动事件(指定动作事件百分比)
–pct-trackball:轨迹球事件(指定轨迹球百分比)
–pct-nav:导航事件,基本导航事件上下左右
–pct-majornav:主要导航事件,中间键返回键菜单键
–pct-syskeys:系统按键事件,home键back键拨号键音量键
–pct-appswitch:activity之间切换,启动activity事件
–pct-pinchzoom:缩放事件,
–pct-rotation:屏幕旋转事件
–pct-flip:键盘事件
–pct-anyevent:任意事件,设定不常用事件。

注:1、事件比例不能超过100;2、根据产品需求,定义事件比例。
命令:adb shell monkey -p 包名 -p 包名 --pct-touch 80 --pct-motion 20 --throttle 时长 -s 315311 -vvv 事件数;

9、忽略异常。
常用:
–ignore-crashes:忽略崩溃。
–ignore-timeouts:忽略超时。
–ignore-security-exceptions:忽略安全异常。
–kill-process-after-error:发生错误后直接杀掉进程。
–dbg-no-events:初始化启动的activity,但是不产生任何事件。
–hprof:指定该选项后在事件序列发送前后会立即生成分析报告。
–monitor-native-crashes:跟踪本地方法的崩溃问题。
–wait-dbg:直到连接调试器才执行monkey测试。
-bugreport:当anr,系统无响应,crash时获得bugreports。
注:加在后面位置
命令:adb shell monkey -p 包名 -p 包名 --pct-touch 80 --pct-motion 20 --throttle 时长 -s 315311 --ignore-timeouts --ignore-timeouts -vvv 事件数;

10、保存日志。
方法一:adb shell monkey 1000 >文件路径或文件名;
方法二:adb logcat -v time ‘*E’> monkey.log; 可以过滤
如:adb shell monkey -p 包名 -p 包名 --pct-touch 80 --pct-motion 20 --throttle 时长 -s 315311 --ignore-timeouts --ignore-timeouts -vvv 事件数 > monkey.log(文件名);

实战:
adb shell -p com.xueqiu.android -vvv 96000 --pct-touch 70 --pct-motion 10 -s 1234567 --ignore-crashes --ignore-timeouts 96000 > monkey.log
注:测试app包名com.xueqiu.android,执行8小时,级别-vvv,点击类型比例70滑动10其他20(剩下的为其他),种子数1234567,忽略崩溃忽略超时,将日志定向到文件夹monkey.log中。(事件数怎么得出。如:执行8小时,则86060*1000/300 时间毫秒数总数/每隔300毫秒发送一个请求。)

日志分析。
1.crash闪现。
2.exception异常。
3.force closed 强制退出。
4.anr (application no response)程序无响应。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值