0

UIWebView の shouldStartLoadWithRequest:navigationType: delegate メソッドを使用して、Web ページで実行される html リンクをインターセプトしています。これを行っているのは、Web ページからリアルタイムの通知を受け取ることができるようにするためです。ただし、カスタム URL スキームによって渡されるデータを受信するために、約 5 つの Web ページの読み込みを立て続けに実行しています。私は単にそれらをすべて記録しようとしているだけなので、コードは次のようになります。

-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    NSLog(@"Received Request: %@", request);
    return NO;

}

ただし、すべてのリクエストが NSLog 経由で記録されるわけではありません。リクエストが OSX Safari Web ブラウザの iPhone シミュレータ ログを介して送信され、そこに表示されることを確認しました。

shouldStartLoadWithRequest: デリゲート メソッドを介してこれらのリクエストをすべて受信する方法はありますか?

4

1 に答える 1

0

JavaScript と Objective C の間でメッセージを渡すために使用できるNative Bridgeを参照しているため、他の回答について言及します。非表示の iFrame をページに追加し、その iFrame にリクエストをロードすると、リクエストがデリゲート メソッドにヒットします。

于 2013-11-12T04:07:56.763 に答える