Andriod篇
抓取log方法
方法一:USB线连接,步骤如下:
1.先下载sdk,下载成功后,解压安装,配置环境变量
2.测试机,打开开发者选项中的USB调试(开发者选项可以在设置中关于手机连续点击,就会提示进入“开发者选项”)
3.打开命令行(开始-->运行-->输入“cmd”),进入DOS命令框,进入sdk目录下的platform-tools文件中
4.输入adb kill server,确保没有其他设备干扰,用USB接入andriod测试机(USB选项,选择文件传输非充电模式)
5.adb devices 查看设备连接信息
6.adb logcat 回车即可查看命令
####方法二:bat命令,步骤如下:
1.打开open_logcat.bat文件(前提是已书写保存),内容:
adb shell setprop log.tag V & adb shell stop & adb shell start
2.打开命令行,进入DOS命令框
3.adb devices
查看设备连接信息
4.adb logcat -s OkHttp
回车即可查看命令,命令过滤如只查看与Adjust相关的命令adb logcat -s OkHttp Adjust
注:前提是需要开发在程序端加东西,哎,测试另一个产品才发现,简直尴尬,后续研究
此外:截图可以使用sdk下面的E:\android-sdk-windows\tools\uiautomatorviewer.bat可以实时截图,andriod studio也有截屏和录屏的功能
方法三:Android Studio
1.Andriod Studio的安装配置,详见Android Studio安装配置、环境搭建详细步骤及基本使用
2.打开Andriod Studio,选择logcat
log过滤小技巧
1.log信息级别
代号 | 级别 |
---|---|
V(verbose) | 明细(最低级别) |
D(debug) | 调试 |
I(information) | 信息 |
W(warning) | 警告 |
E(error) | 错误) |
F (Fatal) | 严重错误 |
2.只显示需要输出的白名单
adb logcat " | grep appname"
这里不加""就会'grep' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
仅显示error级别的tag
adb logcat "| grep ^E.appname"
抓去对应等级的log
adb logcat *:E
3.从当前开始显示
adb logcat -c && adb logcat
4.把日志输出到电脑指定的文件夹下
adb logcat >D:\test\1.txt
5.结束log抓取
Ctrl + C 取消抓取日志,再按Ctrl + D退出adb shell 模式
6.筛选ANR log
对于网上好多教程说要
进行root权限获取超级无语,亲试无用
步骤如下:
1.数据线连接测试设备,adb devices能获取到设备信息再说
2.adb shell
3.cd data/anr
4.ls
到这一步就可以看到你所有的traces.txt 文件
5.先退出adb 命令,exit
6.adb pull /data/anr/traces.txt
就会导出traces.txt 到你当前命令的位置,例如我使用的是Xshell路径为:G:\Users\Administrator\Documents\Xftp6\Xshell\Sessions;cmd下位置C:\Users\Administrator下
注:部分设备在第6步报错
处理方法:adb shell cat /data/anr/traces.txt>traces.txt
也会导出traces.txt 到你当前命令的位置,此外我们也可导出到指定位置,如:adb shell cat /data/anr/traces.txt D:
iOS篇
抓取log方法
方法一:第三方工具,iTools——查看crashlog(目前本人使用最多的方法),步骤如下:
1.下载并安装iTools
2.打开iTools软件并使用USB线连接测试机
3.连接成功后手机信任提示弹框点击信任
4.后续步骤如下,找到对应的APPname和时间点,导出log,更改文件属性.ips.beta——>.crash
方法二:iTunes同步获取
Mac OS X:~/Library/Logs/CrashReporter/MobileDevice
Windows 7:C:\Users\计算机登录名\AppData\Roaming\Apple Computer\Logs\CrashReporter\MobileDevices
方法三:libimobiledevice——查看实时日志
Mac上:
1.安装libimobiledevice,打开终端直接输入:
brew install --HEAD libimobiledevice
出现报错......Requested 'libusbmuxd >= 1.1.0' but version of libusbmuxd is 1.0.10......
大概意思说的是libimobiledevice版本更新了,当前版本不符,解决办法:
brew update
brew uninstall --ignore-dependencies libimobiledevice
brew uninstall --ignore-dependencies usbmuxd
brew install --HEAD usbmuxd
brew unlink usbmuxd
brew link usbmuxd
brew install --HEAD libimobiledevice
2.部分常用命令:
安装ipa包,卸载应用
命令安装一个ipa文件到手机上,如果是企业签名的,非越狱机器也可以直接安装了。
ideviceinstaller -i xxx.ipa
命令卸载应用,需要知道此应用的bundleID
ideviceinstaller -U [bundleID]
查看系统日志
idevicesyslog
log筛选
1.
idevicesyslog >> iphone.log &
2.tail -f iphone.log | grep 'QQ'
# 查看包含QQ的行
- 查看当前已连接的设备的UUID
idevice_id --list
- 截图
idevicescreenshot
- 查看设备信息
ideviceinfo
Return Top
方法四:iOS通过设备直接获取崩溃日志
1.打开设置->隐私->分析->分析数据,在其中找到你想要的应用程序的日志,日志将使用以下格式命名:<应用名称>_<崩溃时间>
2.选择所需的日志,复制文本或点击右上角的分享按钮分享出去,并且把分享得到的.ips文件的后缀名改为.crash即可