我正在深入研究iOS开发,当我尝试在UIWebView中加载特定的Facebook粉丝页面时,它会加载该网站的移动版本,该版本仅加载粉丝页面的墙壁而不是我的特定标签需要加载。在我的应用程序的iPad版本中,UIWebView加载了正常的非移动版本的Facebook,它加载选项卡就好了。如何强制iPhone上的UIWebView加载正常版本的Facebook?
答案 0 :(得分:11)
Facebook很可能会分析用户代理以确定要投放的版本。如果是这种情况,则将用户代理更改为桌面浏览器用户代理将导致facebook更改提供的页面版本。您可以在NSMutableURLRequest上更改用户代理,如下所示:
[request setValue:@"some-user-agent" forHTTPHeaderField:@"User_Agent"];
答案 1 :(得分:0)
在viewDidLoad中(或在加载UIWebView之前的其他地方)执行此操作:
NSDictionary *userAgent = @{ @"UserAgent" : @"Mozilla/5.0 (Windows NT 6.3; rv:36.0) Gecko/20100101 Firefox/36.0" };
[[NSUserDefaults standardUserDefaults] registerDefaults:userAgent];