解决国内部分系统自带浏览器视频层级问题

8 篇文章 0 订阅

问题描述

简单的视频播放,在小米/vivo 等自带浏览器发生视频控件覆盖其他UI

解决方案:


const loadWebVideo = async (url: string): string => {
  try {
    const headers = new Headers()
    headers.append("Range", "bytes=0-")
    const response = await fetch(url, { headers })

    if (!response.ok) {
      throw new Error("Network response was not ok")
    }

    const arrayBuffer = await response.arrayBuffer()
    const blob = new Blob([arrayBuffer], { type: "application/octet-stream" })
    const videoData = URL.createObjectURL(blob)
    return videoData
  } catch (error) {
    console.error("Error fetching web video data:", error)
    throw error
  }
}

传入你的 url 视频地址并返回 blob:// 直接放到你的video src 即可
⚠️ 需要注意的是在ios 系统上会造成视频无法播放,所以需要你去判断一下ios机型不用转换url

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值