私はココア開発の初心者です。
WebPolicyDelegate の使用について読みました。しかし、私はそれを本来の方法で機能させることができないようです。アプリで外部リンクを開き、chrome や safari などの Web ブラウザーで起動できるようにします。これは、リンクがクリックされたときにのみ発生します。
現在、私のアプリのデフォルトの URL は、私のアプリの webview が行っていることと同時に、web ブラウザーにも開きます。
policyDelegate を webview に設定し、その実装に次のコードを使用しました。
- (void)webView:(WebView *)webView
decidePolicyForNavigationAction:(NSDictionary *)actionInformation
request:(NSURLRequest *)request
frame:(WebFrame *)frame
decisionListener:(id <WebPolicyDecisionListener>)listener
{
if ([actionInformation objectForKey:WebActionElementKey]) {
[listener ignore];
[[NSWorkspace sharedWorkspace] openURL:[request URL]];
}
else {
[listener use];
}
}
どんな助けでも大歓迎です!:)