如何在Spotify上播放专辑中的曲目,以便随后使用适用于Android的Spotify App Remote SDK播放专辑的下一首曲目?

时间:2020-08-02 18:41:26

标签: android spotify

示例:我有一个Spotify专辑,我想播放其第15首曲目。曲目15播放完毕后,我希望Spotify播放曲目16,之后播放曲目17,依此类推。

我正在使用适用于Android的Spotify应用远程SDK。我可以想到三种可能的解决方案。

解决方案

  1. 通过Spotify Web API获取专辑的以下曲目并将其添加到queque中。尽管我不希望Spotify保留该queque,但该曲目对我不起作用当用户开始播放另一个播放列表或专辑时。

  2. 使用后台服务,当当前曲目结束时,它会自动开始播放下一首曲目。但是,在这里,用户会遇到曲目之间的明显延迟。

  3. 启动相册并跳过多次。从理论上讲,此选项有效。不过,它似乎并不十分优雅。

是否有更好的方法来实现这一目标?例如,以某种方式向轨道添加上下文? 感谢您的帮助!

2 个答案:

答案 0 :(得分:3)

有一个很好的示例代码Start/Resume a User's Playback,您可以如何实现它。

{
  "context_uri": "spotify:album:5ht7ItJgpBH7W6vJ5BqpPr",
  "offset": {
    "position": 5
  },
  "position_ms": 0
}

context_uri设置为专辑ID,将offset设置为曲目号,将position_ms设置为您的位置(以毫秒为单位)。

答案 1 :(得分:0)

使用方法:

mSpotifyAppRemote.getPlayerApi().skipToIndex(java.lang.String uri, int index)

您必须将 uri 与上下文放在一起,例如专辑:

"spotify:album:5ht7ItJgpBH7W6vJ5BqpPr"

并且在参数索引中,您需要将曲目在专辑中的位置。

您可以在此处的 SpotifyAppRemote 的 javadoc 中找到更多方法: https://spotify.github.io/android-sdk/app-remote-lib/docs/