Windows抓取Android和iOS手机上app的log

3,404 阅读4分钟

一、Android篇

1.使用adb logcat抓取

  • 打印简单日志:adb logcat
  • 打印日志具有详细时间和简单数据:adb logcat -v time
  • 打印的日志保存到电脑本地:adb logcat -v time >D:\log.txt
  • 打印级别为错误的日志:adb logcat *:E
  • 打印指定包名的日志,并存放到指定位置:adb logcat -v time -s 'app包名' *:E > e/log.log
  • 若连接多台设备后,指定设备的日志:adb -s 'devicename' logcat -v time -s 'app包名' *:E > e/log.log
Android 的日志分为如下几个优先级(priority):

V —— Verbose(最低,输出得最多)
D —— Debug
I —— Info
W —— Warning
E —— Error
F —— Fatal
S —— Silent(最高,啥也不输出)

adb logcat选项解析

--"-s"选项 : 设置输出日志*:s的标签, 只显示该标签的日志;
--"-f"选项 : 将日志输出到文件, 默认输出到标准输出流中, -f 参数执行不成功;
--"-r"选项 : 按照每千字节输出日志, 需要 -f 参数, 不过这个命令没有执行成功;
--"-n"选项 : 设置日志输出的最大数目, 需要 -r 参数, 这个执行 感觉 跟 adb logcat 效果一样;
--"-v"选项 : 设置日志的输出格式, 注意只能设置一项;
--"-c"选项 : 清空所有的日志缓存信息;
--"-d"选项 : 将缓存的日志输出到屏幕上, 并且不会阻塞;
--"-t"选项 : 输出最近的几行日志, 输出完退出, 不阻塞;
--"-g"选项 : 查看日志缓冲区信息;
--"-B"选项 : 以二进制形式输出日志;

2.使用Android Studio抓取

  1. 打开Android Studio,新建一个工程,选择Basic Activity,点击Next后,选择工程文件存储位置后点击finish

image.png

  1. 点击底部的logcat,底部弹出日志显示框

image.png

  1. 顶部选择框从左至右显示内容分别为:

(1) 设备选择框,选择连接的设备

(2) APP包名选择框,会显示当前手机上打开的APP的包名,选择后,会抓取指定APP的日志

(3) 日志级别:Verbose→Debug→Info→Warn→Error→Assert

  • Verbose:显示所有日志消息(默认值)
  • Debug:显示仅在开发期间有用的调试日志消息
  • Info:显示常规使用情况的预期日志消息
  • Warn:显示尚不是错误的潜在问题的日志消息
  • Error:显示已经引发错误的问题的日志消息
  • Assert:显示开发者预计绝不会发生的问题的日志消息

(4) 搜索logcat消息,若需要根据正则表达式搜索,则勾选右侧的Regex

(6) 过滤器:可选择过滤当前选中的APP的日志,或自定义过滤规则

  • Show only selected application:仅显示前面选中的APP的日志
  • No Filters:不应用过滤器。无论您选择哪个进程,logcat 都会显示设备中的所有日志消息
  • Edit Filter Configuration:创建或修改自定义过滤器。例如,您可以创建一个过滤器,以同时查看两个应用中的日志消息

如果选择自定义设置过滤器,则Create New Logcat Filter设置框如下:

  • Filter Name:输入要设定的过滤器的名称,或者从左侧窗格中进行选择以修改现有过滤器。名称只能包含小写字符、下划线和数字
  • Log Tag:指定标记(可选)
  • Log Message:指定日志消息文本(可选)
  • Package Name:指定软件包名称(可选)
  • PID:指定进程 ID(可选)
  • Log Level:选择日志级别(可选)
  • Regex:选择此选项可以为相应参数使用正则表达式语法

点击左上角+号可添加到左侧窗格,点击右上角-号可从左侧窗格移除,完成后,点击OK。

如果需要了解更详细的内容,清查看:developer.android.com/studio/debu…

二、iOS篇

iTools工具,下载链接为:www.itools.cn/

  1. iPhone手机插上电脑,打开iTools,需要安装驱动,驱动安装成功后才能连接上手机,手机连接成功后如下图所示:

image.png

  1. 点击工具箱,点击实时日志

image.png

  1. 显示实时日志,点击保存完整日志,文件名为app.log

image.png

  1. 由于文件中包含很多其它APP的日志,所以这边需要过滤出指定APP的日志。cmd打开控制台,输入命令:
adb logcat | find "app包名" > E:\study\qxb\qxb_log.txt

过滤日志中指定APP的log

过滤后的日志内容将替换原有的日志内容