【问题标题】:Cannot play HTML5 video in Cordova app on iOS if the video src changes如果视频 src 更改,则无法在 iOS 上的 Cordova 应用程序中播放 HTML5 视频
【发布时间】:2023-04-06 12:06:01
【问题描述】:

我正在为 iOS 开发基于 Cordova 的应用程序。我以编程方式在页面中添加了一个<video> 元素,它运行良好。但是,如果我更改视频播放器的来源,则无法再次播放视频。在 Electron 应用程序中使用相同的代码可以很好地即时交换视频剪辑。如何在 iOS 上实现视频源交换?

【问题讨论】:

  • iOS safari 中是否可以使用相同的代码?您能否提供用于视频元素并更改源代码的示例。
  • 我很快就会尝试获得一个最小的示例设置。
  • 从一个空白的 Cordova 项目开始,我似乎可以毫无问题地更改源代码,所以我的项目中一定有一些奇怪的事情发生......

标签: javascript ios html cordova


【解决方案1】:

我依稀记得过去必须在 video 元素上调用 .load() 才能重置所有内容。我不确定是否仍然如此。

【讨论】:

  • 我发现了一个暗示可能对我有帮助的 SO 问题,但不幸的是,在更改源后添加 video.load() 似乎对我没有帮助。
【解决方案2】:

原来我的问题是我也在更改字幕的来源。为了方便起见,我将文本轨道元素的引用存储为我的视频播放器元素的一个字段,这在 Electron 中运行良好。对于 Cordova,我猜存储的引用无效并导致我的函数提前退出,从而跳过了我调用 play() 的部分。在交换源时重新查找文本轨道解决了这个问题。

【讨论】:

    猜你喜欢
    • 2015-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-21
    相关资源
    最近更新 更多