我已经使用以下代码NSURLProtocol
对其进行了子类化和注册:didFinishLaunchingWithOptions
+ (void) registerProtocol
{
static BOOL registered = NO;
if (!registered)
{
[NSURLProtocol registerClass:[MyURLProtocol class]];
registered = YES;
}
}
对于UIWebView
我的应用程序中的第一个(在主窗口中),该方法canInitWithRequest
被触发,我可以执行我的自定义代码。
但是我有第二个UIWebView
,它UIViewController
在应用程序中的某个点被推送(以模态方式呈现)。将canInitWithRequest
不会为第二个调用UIWebView
,因此我无法执行我的自定义代码。在创建两个实例之后注册协议时甚至是这样UIWebView
。
有谁知道为什么?
[编辑] 哦!我刚刚发现它只是加载在第二个 webview 中的 javascript 中的一个简单错误 :( 现在在两个 webview 中都像一个魅力!