获取手机序列号
adb devices
adb获取日志
1、logcat查询某个时间段日志;
通过adb logcat和grep结合,进行过滤,就可以得到某个时间点的日志
比如didifood包下面的01-11 13点以后的日志,可以通过下面命令得到
adb logcat | grep "xiaoju" | grep "01-11 13"
2、查看crash,anr相关日志
常见导致Crash的异常
- NullPointerException 空指针ClassCastException 类型转换异常
- IndexOutOfBoundsException 下标越界异常
- ActivityNotFoundException Activity未找到异常
- IllegalStateException 非法状态异常
- ArrayIndexOutOfBoundsException 数组越界异常
- SecurityException 安全异常
crash可以在日志中搜:FATAL 以及上述关键词
anr搜:anr in关键词 9.获取崩溃信息方法
adb logcat *:W |grep -E "com.xiaojukeji.didi.global.customer|carsh|Exception" > 日志路径名
其中|表示管道,进行过滤,- E表示多个字符串匹配,"com.xiaojukeji.didi.global.customer|carsh|Exception"表示匹配三个字符串中其中一个,>表示重定向到某一个文件
日志的优先级通常有以下几档,由低到高:日志
1)VERBOSE,通常信息,使用Log.v输出颜色为黑色且日志级别大于等于VERBOSE的信息;
2)DEBUG,调试信息,使用Log.d输出颜色为蓝色且日志级别大于等于DEBUG的信息;
3)INFO,标识信息,使用Log.i输出绿色且日志级别大于等于INFO的信息;
4)WARN,警告信息,使用Log.w输出橙色且日志级别大于等于WARN的信息;
5)ERROR,错误信息,使用Log.e输出红色且日志级别大于等于ERROR的信息。
查看当前手机所有apk包名
adb shell pm list package -f
adb查看手机当前运行的包名
adb shell dumpsys window | findstr mCurrentFocus
获取当前手机运行app的安装路径
adb获取version_Code
adb装包
adb devices 查看包的序列号
adb -s 设备编号 install apk的完整路径
adb push/pull的区别
adb push:从电脑上传文件到手机
adb pull:从手机传送文件到电脑
其中push和pull操作的文件必须是可读可写的文件
我们可以通过ls -l去查看当前目录下面的文件的权限,其中r是可读w是可写,x是可执行
当执行adb push或者adb pull的时候,如果出现Read-only file system 报错,此时执行adb remount ,意思是将设备改为可读可写
adb shell——root相关操作
adb root(本人机器没有root权限,不做截图) 8.adb logcat查询crash/ANR 日志关键字
adb monkey
adb shell monkey 100 # 在app端执行monkey随机测试100次,
adb shell monkey -p com.xiaojukeji.didi.global.customer 100 指定didifood,随机测试100次
当我们执行monkey的时候,需要一些日志信息,此时我们需要将日志写到本地
adb shell monkey -p com.xiaojukeji.didi.global.customer -v -v -v 30 > ./t
est.log
adb shell monkey -p com.xiaojukeji.didi.global.customer --throttle 300 100 > ./test.log
# 表示执行100个伪随机用户事件流,事件间隔为300毫秒。注:一般设置为300毫秒,原因是实际用户操作的最快300毫秒左右一个动作事件。
# 通常,应用发生崩溃或异常时Monkey会停止运行。如果设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
# 调整触摸事件的百分比。(触摸事件是指在屏幕中的一个down-up事件,即在屏幕某处按下并抬起的操作) adb shell monkey --pct-touch 67 -v 10 # 表示执行10个伪随机用户事件流,并调整其中触摸事件的百分比为67%
adb shell monkey相关事件