mirror of
https://github.com/ikun0014/lx-music-mobile.git
synced 2025-07-03 15:02:08 +08:00
尝试修复软件启动时恢复上一次播放的歌曲可能导致软件崩溃的问题
This commit is contained in:
parent
4322a216a9
commit
f8b296645a
5
index.js
5
index.js
@ -60,11 +60,14 @@ const init = () => {
|
||||
initMusicTools()
|
||||
getPlayInfo().then(info => {
|
||||
if (!info) return
|
||||
global.restorePlayInfo = info
|
||||
if (info.listId != LIST_ID_PLAY_TEMP) {
|
||||
info.list = global.allList[info.listId]
|
||||
if (info.list) info.list = info.list.list
|
||||
}
|
||||
|
||||
if (!info.list || !info.list[info.index]) return
|
||||
global.restorePlayInfo = info
|
||||
|
||||
store.dispatch(playerAction.setList({
|
||||
list: {
|
||||
list: info.list,
|
||||
|
@ -1,5 +1,3 @@
|
||||
### 修复
|
||||
|
||||
- 修复手机分享的wy歌单、某些tx、kg歌单无法打开的问题
|
||||
- 修复打开空的歌单时,点击播放全部会导致应用崩溃的问题
|
||||
- 修复企鹅音乐搜索歌曲没有结果的问题
|
||||
- 尝试修复软件启动时恢复上一次播放的歌曲可能导致软件崩溃的问题
|
||||
|
@ -20,7 +20,7 @@ export default memo(() => {
|
||||
const handlePlayAll = useCallback(async() => {
|
||||
if (!listDetailData.info.name) return
|
||||
const list = await getListDetailAll(selectListInfo.id)
|
||||
if (!list.length) return
|
||||
// if (!list.length) return
|
||||
setPlayList({
|
||||
list: {
|
||||
list,
|
@ -2,7 +2,7 @@ import React, { memo } from 'react'
|
||||
import { View, Text, StyleSheet, ImageBackground } from 'react-native'
|
||||
import { AppColors, BorderWidths } from '@/theme'
|
||||
import { useGetter } from '@/store'
|
||||
import ButtonBar from './ButtonBar'
|
||||
import ButtonBar from './ActionBar'
|
||||
|
||||
const Header = memo(() => {
|
||||
const selectListInfo = useGetter('songList', 'selectListInfo')
|
||||
|
@ -35,7 +35,7 @@ export default () => {
|
||||
}, [playMusicInfo, setJumpPosition, setNavActiveIndex, setPrevSelectListId])
|
||||
|
||||
useEffect(() => {
|
||||
const url = playMusicInfo ? playMusicInfo.musicInfo.img : null
|
||||
const url = playMusicInfo && playMusicInfo.musicInfo ? playMusicInfo.musicInfo.img : null
|
||||
if (imgUrl == url) return
|
||||
setImgUrl(url)
|
||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||
|
@ -8,7 +8,7 @@ export default () => {
|
||||
const downloadFileName = useGetter('common', 'downloadFileName')
|
||||
const playMusicInfo = useGetter('player', 'playMusicInfo')
|
||||
let title = '^-^'
|
||||
if (playMusicInfo) {
|
||||
if (playMusicInfo && playMusicInfo.musicInfo) {
|
||||
title = downloadFileName.replace('歌手', playMusicInfo.musicInfo.singer).replace('歌名', playMusicInfo.musicInfo.name)
|
||||
}
|
||||
// console.log(playMusicInfo)
|
||||
|
@ -515,6 +515,7 @@ export const getLrc = musicInfo => async(dispatch, getState) => {
|
||||
}
|
||||
|
||||
export const setList = ({ list, index }) => (dispatch, getState) => {
|
||||
if (!(list && list.list && list.list[index])) return
|
||||
dispatch(setListInfo(list))
|
||||
|
||||
const state = getState()
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { createSelector } from 'reselect'
|
||||
import { LIST_ID_PLAY_TEMP, LIST_ID_PLAY_LATER } from '@/config/constant'
|
||||
import { LIST_ID_PLAY_LATER } from '@/config/constant'
|
||||
|
||||
|
||||
// sourceInfo(state, getters, rootState, { sourceNames }) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user