修复通知栏播放速率更新问题

This commit is contained in:
lyswhut 2023-03-24 20:25:52 +08:00
parent b71eeb12f0
commit c121800d80
2 changed files with 8 additions and 4 deletions

View File

@ -106,8 +106,8 @@ export const getCurrentTrack = async() => {
return list[currentTrackIndex] return list[currentTrackIndex]
} }
export const updateMetaData = async(musicInfo: LX.Player.MusicInfo, isPlay: boolean) => { export const updateMetaData = async(musicInfo: LX.Player.MusicInfo, isPlay: boolean, force = false) => {
if (isPlay == isPlaying) { if (!force && isPlay == isPlaying) {
const duration = await TrackPlayer.getDuration() const duration = await TrackPlayer.getDuration()
// console.log('currentIsPlaying', prevDuration, duration) // console.log('currentIsPlaying', prevDuration, duration)
if (prevDuration != duration) { if (prevDuration != duration) {

View File

@ -8,9 +8,10 @@ import Slider, { type SliderProps } from '@/components/common/Slider'
import { updateSetting } from '@/core/common' import { updateSetting } from '@/core/common'
import { useI18n } from '@/lang' import { useI18n } from '@/lang'
import styles from './style' import styles from './style'
import { setPlaybackRate } from '@/plugins/player' import { setPlaybackRate, updateMetaData } from '@/plugins/player'
import { setPlaybackRate as setLyricPlaybackRate } from '@/core/lyric' import { setPlaybackRate as setLyricPlaybackRate } from '@/core/lyric'
import ButtonPrimary from '@/components/common/ButtonPrimary' import ButtonPrimary from '@/components/common/ButtonPrimary'
import playerState from '@/store/player/state'
const Volume = () => { const Volume = () => {
@ -35,10 +36,13 @@ const Volume = () => {
const rate = value / 100 const rate = value / 100
void setLyricPlaybackRate(rate) void setLyricPlaybackRate(rate)
updateSetting({ 'player.playbackRate': rate }) updateSetting({ 'player.playbackRate': rate })
void updateMetaData(playerState.musicInfo, playerState.isPlay, true)
} }
const handleReset = () => { const handleReset = () => {
setSliderSize(100) setSliderSize(100)
void setPlaybackRate(1) void setPlaybackRate(1).then(() => {
void updateMetaData(playerState.musicInfo, playerState.isPlay, true)
})
void setLyricPlaybackRate(1) void setLyricPlaybackRate(1)
updateSetting({ 'player.playbackRate': 1 }) updateSetting({ 'player.playbackRate': 1 })
} }