h5 video 初始化_iOS WebView 对 H5 视频播放的控制

在iOS中,WKWebView加载H5页面时,由于安全隐私考虑,视频播放相关特性如全屏、自动播放、画中画可能受限。本文讨论了如何初始化WKWebView以控制这些行为,包括设置userAgent、是否允许内联播放、哪些媒体需要用户操作才能播放、是否支持AirPlay和画中画模式。并提供了Swift代码示例及效果对比。
摘要由CSDN通过智能技术生成

各大厂商在媒体播放这块一般管控都比较严格,所以经常会出现一些非常规的行为,比如 iOS 唤出全屏,比如自动播放,比如画中画(PiP) 无法唤起等问题。

在 iOS 中,我们各个 App 引入的 Webview 容器都是官方推荐的 WKWebView ,我们需要它来加载我们的网页,从而完成部分功能。但是处于安全隐私的考虑,它默认的一些属性是并不开启的。其中我们比较关注的视频播放有这么几项:

  • applicationNameForUserAgent 用于设置 WebView user agent
  • allowsInlineMediaPlayback 是使用h5的视频播放器在线播放, 还是使用原生播放器全屏播放
  • mediaTypesRequiringUserActionForPlayback 允许哪些媒体格式需要用户手动触发播放
  • allowsAirPlayForMediaPlayback 是否允许 Apple 的 Airplay
  • allowsPictureInPictureMediaPlayback 是否允许 画中画模式(PiP)

在 Swift 中,我们可以简单的初始化一个 webview

struct WebView: UIViewRepresentable {
    let request: URLRequest
    var config = WKWebViewConfiguration()
    func makeUIView(context: Context) -> WKWebView {
	    // edit your config
        config.applicationNameForUserAgent = "Mozi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值