运行新Apple TVOS操作系统的Apple TV的用户代理字符串是什么(我认为它基于iOS)?他们是否将自己报告为" iOS"设备
答案 0 :(得分:2)
我没有看到任何关于此的官方文档,但是很多人报告说tvOS的用户代理有很长的路要走:
[AppName]/1 CFNetwork/758.1.6 Darwin/15.0.0
[AppName]/1 CFNetwork/758.1.2 Darwin/15.0.0
我见过类似的东西。 这是我的:
[AppName]/1 CFNetwork/758.2.8 Darwin/15.2.0
注意:这些用户代理可以更改。您可以使用HTTP代理和监视器自行检查,例如Charles。 这里也提到SO。
来源:
答案 1 :(得分:1)
Apple TV不支持WebKit框架,这意味着您无法在技术上显示网页,因此拥有用户代理。
但是,如果你以某种方式运行了一个新的TVOS,那么用户代理肯定是:
Mozilla / 5.0(Apple TV; CPU iPhone OS 9_0,如Mac OS X) AppleWebKit / 601.1.46(KHTML,像Gecko)Mobile / 13T534YI
答案 2 :(得分:1)
tvOS目前(截至2017年10月)未在其SDK中公开任何Web视图组件(例如UIWebView
)。但是,您仍然可以强制tvOS使用反射加载UIWebView
(请参阅答案here),然后从中提取用户代理字符串。
let webViewClass: AnyObject.Type = NSClassFromString("UIWebView")!
let webViewObject: NSObject.Type = webViewClass as! NSObject.Type
let webView: AnyObject = webViewObject.init()
let userAgent = webView.stringByEvaluatingJavaScript(from: "navigator.userAgent")
print(userAgent!)
输出:
Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Mobile/15J380