用户使用我的浏览器浏览网页,服务器可以得到我的浏览器名称和版本号.
大概两种思路,第一种是使用私有 API,第二种则是 iOS SDK内的。第一种这里就放弃不说了,只能上第二种实现思路。
// 获取 iOS 默认的 UserAgent,可以很巧妙地创建一个空的UIWebView来获取:
NSString *userAgent = [[[UIWebView alloc] init] stringByEvaluatingJavaScriptFromString:@"navigator.userAgent"];
// 版本号
NSString *appVersion = [[NSBundle mainBundle] infoDictionary][@"CFBundleShortVersionString"];
NSString *newAgent = [NSString stringWithFormat:@"app/jsk365/ios/%@;%@",appVersion,userAgent];
//修改userAgent
[[NSUserDefaults standardUserDefaults] registerDefaults:@{@"UserAgent":newAgent}];
//测试一下
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
NSLog(@"UserAgent = %@", [webView stringByEvaluatingJavaScriptFromString:@"navigator.userAgent"]);
}
Xcode 7.3 iOS 9.3 模拟器下得到的结果是:
app/jsk365/ios/4.2.0;Mozilla/5.0 (iPhone; CPU iPhone OS 9_3 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Mobile/13E230
希望以上内容对有需要的开发者有所帮助