gpt4 book ai didi

ios - iOS 13 中使用 WKWebView 进行桌面浏览?

转载 作者:行者123 更新时间:2023-12-01 17:54:26 55 4
gpt4 key购买 nike

根据 WWDC 2019 视频 203,我应该能够在 iPad 上以全屏 WKWebView 看到桌面浏览。但我没有看到它。例如,当我在 WKWebView 中访问 google 时,我可以清楚地看到该网站的移动版本。

我已经尝试了视频中建议的所有内容。我已经设置了 applicationNameForUserAgent,并且 Web 检查器显示它正在按照视频中的建议进行设置:

"5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/1.0 MyBrowser/1.0"

我还实现了导航委托(delegate)来请求 .desktop 模式:

func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, preferences: WKWebpagePreferences, decisionHandler: @escaping (WKNavigationActionPolicy, WKWebpagePreferences) -> Void) {
preferences.preferredContentMode = .desktop
print("asking for desktop version")
decisionHandler(.allow, preferences)
}

正在调用该方法。但我仍然看到该网站的移动版本。

当我在同一台 iPad 上的 Safari 中访问同一网站时,或者如果我使用 SFSafariViewController,我确实会看到该网站的桌面版本,如广告所示。如何在我的 WKWebView 中获取该版本的网站?

最佳答案

我可以通过使用“Version/13.0.1 Safari/605.1.15”作为我的applicationNameForUserAgent字符串来让它工作。

(我从哪里获得该字符串?基本上我只是从 SFSafariViewController 中窃取了它。)

这看起来像是一个错误。 Apple 的视频暗示我不必为了获得桌面浏览而谎报用户代理是谁。

关于ios - iOS 13 中使用 WKWebView 进行桌面浏览?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58120839/

55 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com