我正在使用xamarin.forms作为容器应用程序进行项目。该应用程序包含几个链接到受限制的Web内容的WebViews。这些链接之一是我们的SharePoint网站。SharePoint网站具有一个链接,该链接允许我们的用户转到第三方网站(Cornerstone)观看培训视频。使用库存UIWebView,WKWebView或SFSafariviewController时,显示显示视频的弹出窗口。我可以在我的应用程序中播放此视频的唯一方法是使用OpenUrl在Safari中打开SharePoint网站。问题在于,这是一种企业解决方案,我们不想让员工免费使用浏览器。
有没有一种方法可以创建白名单或对搜索栏进行某种控制或读取其链接到并阻止其链接或重定向用户的URL?
不幸的是,由于它正在耕种您的应用程序外部的URL导航,因此您在应用程序中没有很多可以做的事情来限制他们在事实之后所做的事情,'Openurl'仅返回boolean关于它的成功的值,您可以发送给它的唯一参数是:
应用程序 - 引用此应用程序(uiapplication.sharedApplication)。
url-由调用应用程序。
SourceApplication-调用的捆绑包ID应用程序。
注释 - 选举属性列表数据由调用应用程序。
您只有在" appdelegate.cs"类中覆盖" openurl'方法",只有一组可以通过覆盖的选项,但这些选项又不能允许您限制用户的内容浏览器打开后会做。
如果使用" Meraki"或其他一些软件来控制托管设备的使用,则设备进行管理,那么您可能会设置"组策略"样式的一组限制集,但这并不是Xamarin问题,并且应与网络管理员讨论。
话虽如此,我看不出您无法使用WebView 1 的任何理由,这样您就可以在应用程序中处理所有内容。或替代使用自定义渲染器并传递直接视频URL,并承诺打开设备媒体播放器以流式传输内容 2 。
。1 在WebView中播放视频
2 使用媒体管理器插件。