我正试图找到一种方法来获取所有TCP流量的信息,从我的IOS应用程序。该应用程序非常简单,由单个UIWebView对象组成。
我试着在NSURLRequest上使用swizzling,但没有太多的运气-我的版本的requestWithURL:被调用时,我手动调用它NSURLRequest,但它似乎从来没有被调用时,在UIWebView的页面,所以我猜它使用不同的对象在封面下。
所以我想尝试挂钩到CFSocket函数,但那些不是类的一部分,所以我不确定如何搅拌他们(或者如果它甚至可能)。
是否有任何方法挂钩到IOS上的C函数,或任何其他api,我可以尝试swizle访问TCP(甚至HTTP)流量?
我还尝试使用NSURLCache,它适用于大多数主要的。html页面,但正如许多人发现的。cs文件和其他一些文件似乎没有通过缓存。
谢谢!
只需设置一个外部代理,如Fiddler或Charles来监控http流量。或者更复杂的是,Wireshark可以处理任何tcp流量。这将比你正在尝试的更容易,更强大。