获取 HTTP 请求的 iOS 设备默认系统用户代理

Dan*_*sko 5 uiwebview ios wkwebview

我正在与一个 API 进行通信,该 API 要求我使用特定的用户代理字符串。其格式基本上是User-Agent: IOS_USER_AGENT API_CUSTOM_AGENT

经过调查,我发现人们会使用UIWebView并应用 JavaScript 函数来提取系统用户代理字符串。现在它UIWebView已被弃用,它的替代品WKWebView提供了一种计算用户代理的异步方法(对我的目的来说并不理想)。

有没有办法提取某种形式的 iOS 用户代理字符串,而不需要随机创建一些离屏 Web 视图。特别是SFSafariViewController我认为这些网络视图将来被弃用并不是完全不可能的。

我知道像 WhatsApp 和 Facebook 这样的应用程序使用用户代理系统,请参阅此处。问题是,在不涉及网络视图欺骗的情况下实现这一目标的最可靠方法是什么?