【发布时间】:2013-10-20 07:47:00
【问题描述】:
例如网站 'm.freemyapps.com' 拒绝所有浏览器甚至 UIWebView 并且只请求 Safari。
是否可以让我的应用程序以 Safari 的形式出现?
【问题讨论】:
标签: ios uiwebview safari mobile-safari
例如网站 'm.freemyapps.com' 拒绝所有浏览器甚至 UIWebView 并且只请求 Safari。
是否可以让我的应用程序以 Safari 的形式出现?
【问题讨论】:
标签: ios uiwebview safari mobile-safari
如果我正确理解您的问题,您可以做以下两件事中的任何一件-
1) 您可以重定向用户离开应用程序并在 Safari 中打开移动网站。
2) 对于移动站点支持,UIWebView 可能需要在请求中添加额外的 User-Agent 标头字段,以模仿 Safari。 例如
NSURL *url = [NSURL URLWithString:@"m.freemyapps.com"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setValue:@"Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3" forHTTPHeaderField:@"User-Agent"];
[webview loadRequest: request];
在大多数情况下,此解决方案应该有效。如果没有,您应该通过特定移动网站的服务器端实现来了解它是否需要发送额外的标头。
【讨论】: