updateMetadata method
Updates the media metadata displayed by the browser.
Implementation
@override
Future<void> updateMetadata(MediaMetadata metadata) async {
try {
final session = web.window.navigator.mediaSession;
_currentDuration = metadata.duration;
final webMetadata = web.MediaMetadata(web.MediaMetadataInit(
title: metadata.title ?? '',
artist: metadata.artist ?? '',
album: metadata.album ?? '',
artwork: metadata.artworkUri != null
? [
web.MediaImage(
src: metadata.artworkUri!,
sizes: '512x512',
type: 'image/png')
].toJS
: <web.MediaImage>[].toJS,
));
session.metadata = webMetadata;
} catch (e) {
// Metadata updates are best-effort.
}
}