3

这真让我抓狂。我有两个只是 UIWebViews 的应用程序,使用 XCode 4.5.2 和 iOS 6.0 SDK。我想更改网络调用的 UserAgent。我在这两个中都使用了这个代码:

NSString *secretagent = @"MyUserAgent";
NSDictionary *dictionary = [[NSDictionary alloc]
    initWithObjectsAndKeys:secretAgent, @"UserAgent", nil];
[[NSUserDefaults standardUserDefaults] registerDefaults:dictionary];

根据我对网络日志的扫描,让我感到沮丧的是,它在一个中起作用,而不在另一个中起作用。根据我对 objectsForKey:@"UserAgent" 的检查,一个不起作用的仍然是更改 UserAgent 密钥。只是网络请求实际上没有任何变化。

有任何想法吗?现在是凌晨 3 点 30 分,我只是想不通...

4

1 回答 1

6

弄清楚了。初始化 webview 后,您无法更改用户代理。在初始化 webview 之前,我将代码移动到 viewDidLoad,它可以工作。

于 2012-11-06T18:41:03.697 回答