Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
let playerQueenTrack = true
try {
await TrackPlayer.getTrack(track.id)
} catch (e) {
console.log('查询错误', e)
playerQueenTrack = false
}
if (!playerQueenTrack) {
if (!track.artwork) {
track.artwork = 'http://p1.music.126.net/6y-UleORITEDbvrOLV0Q8A==/5639395138885805.jpg'
}
console.log('add Track', track)
await TrackPlayer.add(track)
}
if (addHistory) {
this.history.push(this.trackId)
}
this.trackId = trackId
await TrackPlayer.skip(trackId)
}
await TrackPlayer.play()
}
@action
MusicFiles.getAll(options).then(async tracks => {
const musicsWithID = tracks.map((elm, index) => {
return { ...elm, id: index.toString(), url: elm.path }
});
await TrackPlayer.add(musicsWithID);
setMusic({...music, list: musicsWithID, changeSelected});
}).catch(error => {
console.log("error",error);
const find = item => item.videoId === videoId
const index = activeList.findIndex(find)
const { title, artwork, source } = activeList.find(find)
let insertBeforeId
if (activeList.length > 0) {
const beforeItem = activeList[index + 1]
if (beforeItem) {
insertBeforeId = beforeItem.videoId
}
}
await TrackPlayer.add(
{
title,
artwork,
id: videoId,
url: source,
artist: 'Minan'
},
insertBeforeId
)
}
dispatch({
type: types.SET_FILE_EXISTS,
payload: {
videoId
}
await TrackPlayer.reset()
dispatch(playerReset())
const addList = items
.find(item => item.id === playlistId)
.list.filter(item => item.exists)
.map(({ title, artwork, videoId, source }) => ({
title,
artwork,
id: videoId,
url: source,
artist: 'Minan'
}))
await TrackPlayer.add(addList)
dispatch(setPlaylist(playlistId))
}
await TrackPlayer.skip(videoId)
await new Promise(resolve => setTimeout(resolve, 100))
dispatch(setUserPlaying(true))
}
}
TrackPlayer.reset().then(function() {
TrackPlayer.add(newTrack, null).then(function() {
TrackPlayer.play().then(() => {
updateOptions();
});
});
});
} catch (e) {
if(Platform.OS === 'android'){
audioUrl = RNFS.ExternalDirectoryPath + '/' + pageInfo.id + '.mp3'
}else {
audioUrl = RNFS.LibraryDirectoryPath + '/' + pageInfo.id + '.mp3'
}
audioUrl = "file://" + audioUrl
}
this.terminate()
let track = {
id: ''+pageInfo.id,
url:audioUrl,
title: pageInfo.title,
artist: pageInfo.desc,
artwork:pageInfo.thumb_url
}
TrackPlayer.add(track);
}
}
}
terminate(){
add (track) {
this.list = [track].concat(this.list)
return TrackPlayer.add(track)
}
async play (trackId) {
async function togglePlayback() {
const currentTrack = await TrackPlayer.getCurrentTrack();
if (currentTrack == null) {
await TrackPlayer.reset();
await TrackPlayer.add(playlistData);
await TrackPlayer.add({
id: "local-track",
url: localTrack,
title: "Pure (Demo)",
artist: "David Chavez",
artwork: "https://picsum.photos/200"
});
await TrackPlayer.play();
} else {
if (playbackState === TrackPlayer.STATE_PAUSED) {
await TrackPlayer.play();
} else {
await TrackPlayer.pause();
}
}
}