Apple TV 运行 tvOS 的用户代理字符串是什么?

What is the User Agent string for Apple TVs running tvOS?

Apple TV 运行 新的 Apple tvOS 操作系统(我认为它基于 iOS)的用户代理字符串是什么?他们是否将自己报告为 "iOS" 设备?

Apple TV 不支持 WebKit 框架,这意味着您无法在技术上显示网页,因此需要用户代理。

但是,如果您以某种方式拥有 运行 一个新的 TVOS,用户代理肯定是:

Mozilla/5.0 (Apple TV; CPU iPhone OS 9_0 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Mobile/13T534YI

我没有看到关于此的任何官方文档,但很多人报告说 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 代理和监视器自行检查,例如 CharlesSO.

上也提到了这里

来源:

tvOS 当前(截至 2017 年 10 月)未在其 SDK 中公开任何 Web 视图组件(例如 UIWebView)。但是,您仍然可以使用反射强制 tvOS 加载 UIWebView(参见答案 ),然后从中提取用户代理字符串。

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