この狂気への方法はありますか?追加のアプリケーションを実行する必要性を制限し、単に 1 つの Web サイト内にとどまるキオスク用のブラウザー アプリを構築しようとしています。
調査したところ、目的に応じて機能するはずですが、URI スキーム ( 、など)のdecidePolicyForNavigationAction
フィルタリングを開始するにはどうすればよいですか? ありがとう!mailto://
irc://
Web を閲覧するためにアプリケーションに WebView を実装していますね。
はいの場合は、WebPolicyDelegate プロトコルのリファレンスを調べてください。
特に次のデリゲートは興味深いかもしれません。
- (void)webView:(WebView *)webView
decidePolicyForNewWindowAction:(NSDictionary *)actionInformation
request:(NSURLRequest *)request
newFrameName:(NSString *)frameName
decisionListener:(id < WebPolicyDecisionListener >)listener
上記のデリゲートを使用すると、リクエストを含むあらゆるリクエストを検証できmailto
ます。
URL スキームを検出し、ブロックするかどうかを決定する方法の簡単な例:
NSLog(@"Request URL scheme = %@",[[request URL] scheme]);
if([[[request URL] scheme]isEqualToString:@"mailto"])
{
[listener ignore]; // Block Request
}
else
{
[listener use]; // Allow Request
}