1

如何从 UIWebView 获取 Safari 版本?

如果我使用下面的代码,则版本不包含在 UserAgent 中

UIWebView *webView = [[UIWebView alloc]initWithFrame:CGRectZero];
NSString *userAgent = [webView stringByEvaluatingJavaScriptFromString:@"navigator.userAgent"];

还有另一种方法可以做到这一点吗?

4

2 回答 2

0

我读了标题,并打算建议注入 javascript,但你已经在这样做了,哈哈!您的代码应该可以工作...也许它不适用于移动 safari... 试试这个navigator.appVersion

如果有帮助,我还在网上找到了这段代码:

navigator.userAgent.search("Version") + 8
于 2013-01-09T16:18:49.867 回答
0

这是 Swift 5 中 WKWebView 的解决方案:

webView.evaluateJavaScript("navigator.userAgent") { version, error in
        if let str = version as? String {
            print("WEBKIT VERSION " + str)
        }
    }

这将为您提供一个 AppleWebKit 版本,您可以通过向下滚动到此 wiki 页面上的下拉菜单来匹配 Safari:https ://en.wikipedia.org/wiki/Safari_version_history

于 2021-07-14T15:56:43.703 回答