2015-02-07 27 views
4

我在iOS中使用NSURLHttpProtocol来拦截网络调用,并获取关于处理哪个url,请求发起或完成等信息。我想知道如何拦截Android中的网络调用。我曾尝试使用WebViewClient,但它只是告诉我有关该webView。Android等效于iOS中的NSURLProtocol

我想知道是否通过webview进行特定的调用,哪些url被处理,哪些图片在android中加载。

请提出一些解决方案,了解如何进行此操作。

例如: 如果我有一个基于android的cordova应用程序,基本上有一些webview的设置。我如何拦截通过webview内部资源进行的网络调用?

+0

谷歌搜索'NSURLHttpProtocol'并没有提出什么太多的东西。你确定你是对的吗? – CommonsWare 2015-02-07 23:50:01

+0

@CommonsWare:纠正'NSUrlHttpProtocol'与'NSUrlProtocol' – 2015-02-07 23:52:46

+0

@CommonsWare:问题在2012年被问到。那时android凌空不在场。这个问题完全不同。 – 2015-02-07 23:56:36

回答

0

有几个第三方库,会替你:

最常用的有改造和排球,你可以阅读一个关于他们的好比较this article

+0

这样做是否存在,拦截网络调用如果在混合android应用程序中也存在。 ? – 2015-02-07 23:49:20

+0

我其实从来没有尝试过,但似乎Cordova已经[使用OkHttp](https://github.com/apache/cordova-android/tree/3.5.x/framework/src/com/squareup/okhttp) – 2015-02-07 23:58:00

+2

这些都不是与拦截“WebView”发出的网络请求有关。 – CommonsWare 2015-02-07 23:59:32