fix: break on browser don't support mediaSession
such as stupid WeChat Browser
This commit is contained in:
@@ -49,12 +49,13 @@ function AudioPlayer(props) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// init mediaSession API
|
// init mediaSession API
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
navigator.mediaSession.setActionHandler("stop", () => {
|
if (navigator.mediaSession) {
|
||||||
props.setPlayingFile({});
|
navigator.mediaSession.setActionHandler("stop", () => {
|
||||||
});
|
props.setPlayingFile({});
|
||||||
|
});
|
||||||
|
}
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const updatePlayMode = () => {
|
const updatePlayMode = () => {
|
||||||
@@ -99,11 +100,13 @@ function AudioPlayer(props) {
|
|||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
// media session related staff
|
// media session related staff
|
||||||
navigator.mediaSession.metadata = new window.MediaMetadata({
|
if (navigator.mediaSession) {
|
||||||
title: props.playingFile.filename,
|
navigator.mediaSession.metadata = new window.MediaMetadata({
|
||||||
album: props.playingFile.foldername,
|
title: props.playingFile.filename,
|
||||||
artwork: [{src: "/favicon.png", type: "image/png"}],
|
album: props.playingFile.foldername,
|
||||||
});
|
artwork: [{src: "/favicon.png", type: "image/png"}],
|
||||||
|
});
|
||||||
|
}
|
||||||
// no playing file
|
// no playing file
|
||||||
if (props.playingFile.id === undefined) {
|
if (props.playingFile.id === undefined) {
|
||||||
setPlayingURL("");
|
setPlayingURL("");
|
||||||
|
|||||||
Reference in New Issue
Block a user