0

我已经在 vuejs 中使用 howler.js 实现了播放列表播放器。我想将MediaMetadataAPI 集成到它。MediaSessionAPI 在通知栏、键盘控制、远程设备等控件上运行良好。但我无法使用 MediaMetadata 设置音频的元数据(标题、艺术家、专辑、艺术品)。按照给出的github repo教程进行操作。

出现以下错误: error 'MediaMetadata' is not defined no-undef

chrome 57用来运行它。还测试了浏览器与以下代码的兼容性:

if ('mediaSession' in navigator) {
    console.log("Browser supports MediaMetadata API")
    navigator.mediaSession.metadata = new MediaMetadata({
      title: "my_track_name",
      artist: "track_artist_name",
      album: "track_album_name",
      artwork: "track_image",
    });

} else {
    console.log("Your browser doean't support MediaMetadata")
}

上面的代码打印Browser supports MediaMetadata API,但它不断抛出错误MediaMetadata is not defined

我也曾尝试从包中导入它,@mdn/browser-compat-data如下所示:

const MediaMetadata = require("@mdn/browser-compat-data").api.MediaMetadata;

现在,它显示以下错误: Uncaught TypeError: MediaMetadata is not a constructor

也尝试了这个解决方案,但没有运气,错误仍在继续。

任何人都可以帮我解决这个问题吗?提前致谢。

4

1 回答 1

1

通过使用new window.MediaMetadata({})而不是修复它new MediaMetadata({})

于 2021-06-10T07:26:14.603 回答