【发布时间】:2020-11-07 15:29:38
【问题描述】:
我正在重新使用 Xamarin.Forms,并且我发现了 iPad 上 iOS 13 Safari 的一种新行为,称为“桌面级浏览”。这里有详细介绍:
https://developer.apple.com/videos/play/wwdc2019/203
对我来说,问题是我需要我的 Web 应用程序能够检测普通 Web 浏览器是否正在查看它,或者它是否正被 Xamarin.Forms.WebView 查看。从我的 Web 应用程序中,我曾经能够使用用户代理字符串或 X-Requested-With 标头检测 Web 视图。但是,如果我的 Web 视图在 iOS 13 上的 iPad 上运行,它将进入桌面模式,这会产生一个桌面 Safari 用户代理,没有 X-Requested-With 标头,我无法再检测到它是一个 Web 视图。上述视频中的 2:56 引用了这一点。
在原生 iOS 应用程序中,我显然可以使用WKWebViewConfiguration 来控制这些类似桌面的功能:
https://developer.apple.com/documentation/webkit/wkwebviewconfiguration
我认为这在我的第一个链接中的视频中的 9:01 进行了演示。
如何将WKWebViewConfiguration 与 Xamarin.Forms 一起使用?我看到了一个 WebKit.WKWebViewConfiguration 类,但我如何将它与 Xamarin.Forms.WebView 一起使用?
【问题讨论】:
-
您好,如果回复有帮助,请不要忘记接受它作为答案(点击此答案左上角的✔),它将帮助其他有类似问题的人。 :-)
标签: ios xamarin ipad xamarin.ios wkwebview