Android Studio 抓取请求信息 & Profiler
2019-08-23 本文已影响0人
南窗云
1 Logcat 的不足之处
我们知道 Logcat 可以抓取日志,并可以设置日志等级。
![](https://img.haomeiwen.com/i2849271/e8568d2a92497755.png)
正常情况下,会用 Error 等级抓报错。
如果需要抓取请求信息,则要用到 Debug 等级,如下请求信息的抓取
正常请求
D/^~^app_log: [ (GraphqlRequest.kt:203)#run ] http request onSuccess Data{version=null}
接口报错
D/^~^app_log: [ (GraphqlRequest.kt:181)#run ] http request onFailure [Error{message='Cannot query field "guidanceList" on type "Query".', locations=[Location{line=1, column=36}], customAttributes={}}]
固然,我们能看到接口请求返回的信息,正常数据&报错。
但是当接口报错时,就不好定位问题了:
一是通过页面或各种查找才知道是哪个接口报错(当你接手别人的代码时)。
二是传的参数很难抓取到,复现问题大多时候都要对应参数,究竟是参数传错了还是其他问题,后端同事大多时候也需要参数来定位问题。
2 Profiler的完美用处
今天无意之中发现 Profiler 的完美用处,之前只是用来查看 CPU 占用和实时的性能监测,很少用来抓取接口信息(学无止境,可能我知道的太晚了)
![](https://img.haomeiwen.com/i2849271/4399a58d93b434bf.png)
![](https://img.haomeiwen.com/i2849271/2e31a256bd3daa5f.png)
![](https://img.haomeiwen.com/i2849271/a16939df3d55a77d.png)
至此,我们就可以捕获每一个网络请求的详细信息了,上下行参数都一览无余。