隐私浏览的Cocoa WebView - 未应用WebPreferences

时间:2013-11-24 15:04:55

标签: objective-c macos cocoa webview webkit

我正在尝试在Mac App上的Cocoa WebView中启用私有浏览,但是我的WebPreferences由于某种原因未被应用。有没有人有任何想法? WebView最终不会使用私密浏览。

    WebPreferences *firstWebViewWebPreferences = [[WebPreferences init] alloc];
[firstWebViewWebPreferences setPrivateBrowsingEnabled:YES];
[[NSUserDefaults standardUserDefaults] setObject:firstWebViewWebPreferences forKey:@"firstWebViewWebPreferencesDefaults"];
[[NSUserDefaults standardUserDefaults] synchronize];
[firstWebView setPreferencesIdentifier:@"firstWebViewWebPreferencesDefaults"];

我也尝试过:

    WebPreferences *firstWebViewWebPreferences = [[WebPreferences init] alloc];
[firstWebViewWebPreferences setPrivateBrowsingEnabled:YES];
[firstWebView setPreferences:firstWebViewWebPreferences];

因为两者似乎都符合文档,但在两种情况下,我的WebView都保留了Cookie并保存了Safari可以看到的历史记录。关于我在这里犯的错误的任何帮助都非常感谢。谢谢!

1 个答案:

答案 0 :(得分:0)

我认为你的问题出在这一行:

WebPreferences *firstWebViewWebPreferences = [[WebPreferences init] alloc];

你在alloc之前调用init。替换为:

WebPreferences *firstWebViewWebPreferences = [[WebPreferences alloc] init];

或试试这个:

WebPreferences *firstWebViewWebPreferences = [WebPreferences standardPreferences];
...