美文网首页
iOS真机调试时,不用Charles也能截获URL的方法!

iOS真机调试时,不用Charles也能截获URL的方法!

作者: 茗涙 | 来源:发表于2017-03-14 14:45 被阅读77次

    搞iOS开发的同学们估计会经常遇到各种需要获取当前的url的需求,web页面需要查看url是否正确,server端需要验证下url参数,测试需要看下url的全链等等。

    网上的大神们各种攻略,各种玩转Charles(青花瓷,一款代理软件,很好用也很强大,没用过的网上科普教程吧!),但是手机又要改代理又要换端口,如果仅仅是为了查看一下当前的url或者拉取数据的接口,这种操作在我看来就比较繁琐了,甚至有时候忘记关闭代理导致测试的App没有数据,还以为服务器挂掉了。

    下面介绍下用NSURLProtocol截获url的方法来快速获得所需的url以及url包含的各种信息。

    工具截图:

    ![2.png](https://img.haomeiwen.com/i2310905/ffdc564433bed04a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/330)

    详见代码。

    • JHURLAnalyseProtocol是url截获工具关键类,继承自NSURLProtocol

    • JHURLAnalyseManager是管理类,其中包含了注册的一些公共方法。

    • 也包含了一些调试信息,debug output可以查看。

    下面介绍下使用方法:

    如果项目中第三方管理软件是用pod 管理可以直接在teminal中输入 pod search JHURLAnalyseTool集成。

    注册方法如下,最好是在debug模式下注册,release包不需要展示工具页面

    [NSURLProtocolregisterClass:[JHURLAnalyseProtocolclass]];[[JHURLAnalyseManagerdefaultManager]registerUrlAnalyse];

    我目前使用的是CMMotionManager陀螺仪来加载工具页面,所以在真机调试时,晃动手机就会模态show出工具页面。

    希望此工具能方便同学们的调试工作,喜欢的可以给个star!

    相关文章

      网友评论

          本文标题:iOS真机调试时,不用Charles也能截获URL的方法!

          本文链接:https://www.haomeiwen.com/subject/pnqhnttx.html