【问题标题】:Add a song to the current play queue in a Spotify App将歌曲添加到 Spotify 应用中的当前播放队列
【发布时间】:2026-01-06 09:50:02
【问题描述】:

如何将曲目添加到 Spotify 应用中的当前播放队列?

【问题讨论】:

    标签: spotify spotify-queue


    【解决方案1】:

    您需要创建一个未命名的播放列表来创建自己的播放队列。

    function playTracks(tracks, index) {
      var pl = new models.Playlist();
      for (var i = 0; i < tracks.length; ++i) {
        pl.add(tracks[i]);
      }
      models.player.play(pl.uri, pl.uri, index);
    }
    

    【讨论】:

    • +1 用于使用公共 API。 new Playlist() 制作一个临时播放列表(至少不是我在界面中看到的),并将播放列表作为上下文播放会清除播放队列并添加播放列表。甚至在开始播放后将项目添加到播放列表(播放“下一个”后立即在界面中更新)
    【解决方案2】:

    当前播放队列似乎不可用。但是如果你的目的是建立一个队列,这个 sn-p 可能会很有用......

    // Create a name for a temporary playlist.
    function temporaryName() {
        return (Date.now() * Math.random()).toFixed();
    }
    
    function getTemporaryPlaylist() {
        var temporaryPlaylist = sp.core.getTemporaryPlaylist(temporaryName());
        sp.trackPlayer.setContextCanSkipPrev(temporaryPlaylist.uri, false);
        sp.trackPlayer.setContextCanRepeat(temporaryPlaylist.uri, false);
        sp.trackPlayer.setContextCanShuffle(temporaryPlaylist.uri, false);
        return temporaryPlaylist;
    }
    
    var tpl = getTemporaryPlaylist();
    tpl.add(trackUri);
    tpl.add(track2Uri);
    //...
    
    
    sp.trackPlayer.playTrackFromContext(tpl.uri, 0, "", {
                    onSuccess: //...
                    onError: //...
                    onComplete: //...
                });
    

    【讨论】:

      【解决方案3】:

      Apps API 参考中没有任何内容表明这是可能的。在预览版本中的任何应用程序中也没有提及如何执行此操作。结论必须是目前不支持这样做。

      【讨论】: