我们都在同一条船上,在尝试挖掘 chromium 的源代码但没有成功后,我向 chromium 开发人员发送了一封电子邮件,询问了这个问题,并获得了关于 MediaSession 的有用链接。
所以按照文档,您可以通过在mediaSession 中设置metadata 属性来自定义它,以显示除背景颜色之外的标题、描述和艺术品(也称为背景图像),这是因为背景颜色由像素决定自动生成图像。
if ('mediaSession' in navigator) {
navigator.mediaSession.metadata = new MediaMetadata({
title: 'Never Gonna Give You Up',
artist: 'Rick Astley',
album: 'Whenever You Need Somebody',
artwork: [
{ src: 'https://dummyimage.com/96x96', sizes: '96x96', type: 'image/png' },
{ src: 'https://dummyimage.com/128x128', sizes: '128x128', type: 'image/png' },
{ src: 'https://dummyimage.com/192x192', sizes: '192x192', type: 'image/png' },
{ src: 'https://dummyimage.com/256x256', sizes: '256x256', type: 'image/png' },
{ src: 'https://dummyimage.com/384x384', sizes: '384x384', type: 'image/png' },
{ src: 'https://dummyimage.com/512x512', sizes: '512x512', type: 'image/png' },
]
});
}
我在 JSFiddle 上创建了 demo。结果如下所示。