我又回到了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视图运行在iPad上的iOS 13上,它将进入桌面模式,这将产生一个桌面iOS用户代理--无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
发布于 2020-07-18 21:04:54
除非您遵循这篇文章中的步骤,否则应用程序使用的是UIWebView而不是WKWebView。
有几种方法可以访问编辑WKWebViewConfiguration
https://stackoverflow.com/questions/62960504
复制相似问题