gpt4 book ai didi

reactjs - Spotify Web SDK/Web API 当前播放状态的问题

转载 作者:行者123 更新时间:2023-12-03 14:30:11 25 4
gpt4 key购买 nike

我目前正在使用 Web Player SDK/Web Api 来控制我的应用程序中的 Spotify 播放。我当前遇到的问题是,每当我播放歌曲时,我无法检测到歌曲播放的结束,因为

state.track_window.next_songs

聆听时

player.addListener('player_state_changed', state => { });

“播放队列”中始终有项目,这导致几乎不可能检测到。

这个:state && state.paused && state.context && state.context.metadata && state.context.metadata.uri == null 通常适用,但在 state.track_window.next_songs 的情况下 里面有任何东西,暂停永远不会被触发。

我想知道是否有人有解决方案,或者是否有办法清除特定 Spotify 播放器实例的播放队列?

谢谢!

最佳答案

我不确定我是否理解正确,但如果你想检测歌曲何时完成播放,你可以有一个名为 currentPlaying 的对象,其中包含当前播放歌曲的 ID,然后当有状态更新时,检查state.current_track的ID。如果它与您的 currentPlaying.id 不同,则表示歌曲已结束并开始下一首。

-----编辑------

有一种方法可以让 next_tracks 数组为空。如果您使用 "uris" body 参数播放歌曲,您可以添加要播放的歌曲数组,并且其末尾的 next_tracks 数组为空。看这个截图: enter image description here

要实现此目的,请查看 Spotify API: https://developer.spotify.com/console/put-play/?device_id=&body=%7B%20uris%3A%20%5Bspotify%3Atrack%3A3BQHpFgAp4l80e1XslIjNI%5D%20%7D

我只使用 "uris" 参数,而不是 "context_uri" 并且我只传递数组中的 1 首歌曲。歌曲播放完后就不再播放任何内容。 enter image description here

关于reactjs - Spotify Web SDK/Web API 当前播放状态的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59925558/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com