1

我在我正在开发的 React 音乐应用程序中使用react-player模块。

我的应用程序有一个音乐播放列表。当一首曲目播放完毕后,它会自动转到下一首曲目。

问题是,当浏览器选项卡没有焦点(背景选项卡)时,它不会播放下一首曲目,因为它似乎被浏览器的自动播放策略阻止(已使用 Chrome 和 Firefox 测试)。

请参阅此处的文档:https ://developer.mozilla.org/en-US/docs/Web/Media/Autoplay_guide

有人建议我为特定网站打开自动播放(对于 Chrome,请转到chrome://settings/content/sound);但它也不起作用。无论如何,这不是我的访客的解决方案。

几天来我一直在努力解决这个问题;关于如何实现这一目标的任何想法?

  • 我有多个提供商(Youtube、Soundcloud、...),所以播放器并不总是播放来自同一个服务的东西。
  • 我能够使用Page Visibility API检测选项卡的可见性。
  • 在我的控制台中,我可以看到react-player的onready事件被触发;但是播放器“卡住”了,直到我再次回到选项卡-然后播放。

是我的播放器当前代码的粘贴箱。负责让源播放的函数是

const resolveTracks = async(track,source,backwards) => {
    ...
}

谢谢!

4

0 回答 0