如何为 Spotify SDK 制作队列 android
How to make a queue for spotify sdk android
我使用 android sdk 从 spotify 获得了歌曲 uri 数组列表。但是只有一首歌曲正在播放我想检测一首歌曲何时完成,以便我可以启动另一首歌曲下面是我正在使用的代码。
Config playerConfig = new Config(this,sharedPreferences.getString(KEY,""),CLIENT_ID);
Spotify.getPlayer(playerConfig, this, new SpotifyPlayer.InitializationObserver() {
@Override
public void onInitialized(SpotifyPlayer spotifyPlayer) {
mPlayer = spotifyPlayer;
// Toast.makeText(MainActivity.this,mPlayer.getMetadata().toString(),Toast.LENGTH_LONG).show();
// System.out.println(response.getAccessToken());
mPlayer.addNotificationCallback(PlaySong.this);
mPlayer.play(track.get(curr).getUriFull(), 0, 0);
mPlayer.queue(track.get(1).getUriFull());
// mPlayer.addPlayerNotificationCallback(MainActivity.this);
}
@Override
public void onError(Throwable throwable) {
}
});
如有任何帮助,我们将不胜感激。
好吧,我花了一些时间自己解决了这个问题。如果有人需要,下面是解决方案。
mPlayer.addNotificationCallback(new Player.NotificationCallback() {
@Override
public void onPlaybackEvent(PlayerEvent playerEvent) {
if(playerEvent==PlayerEvent.kSpPlaybackNotifyTrackDelivered){
Toast.makeText(PlaySong.this,"Delivered",Toast.LENGTH_LONG).show();
System.out.println("Delivered");
}
@Override
public void onPlaybackError(Error error) {
}
});
只需检查这个条件if(playerEvent==PlayerEvent.kSpPlaybackNotifyTrackDelivered)
我使用 android sdk 从 spotify 获得了歌曲 uri 数组列表。但是只有一首歌曲正在播放我想检测一首歌曲何时完成,以便我可以启动另一首歌曲下面是我正在使用的代码。
Config playerConfig = new Config(this,sharedPreferences.getString(KEY,""),CLIENT_ID);
Spotify.getPlayer(playerConfig, this, new SpotifyPlayer.InitializationObserver() {
@Override
public void onInitialized(SpotifyPlayer spotifyPlayer) {
mPlayer = spotifyPlayer;
// Toast.makeText(MainActivity.this,mPlayer.getMetadata().toString(),Toast.LENGTH_LONG).show();
// System.out.println(response.getAccessToken());
mPlayer.addNotificationCallback(PlaySong.this);
mPlayer.play(track.get(curr).getUriFull(), 0, 0);
mPlayer.queue(track.get(1).getUriFull());
// mPlayer.addPlayerNotificationCallback(MainActivity.this);
}
@Override
public void onError(Throwable throwable) {
}
});
如有任何帮助,我们将不胜感激。
好吧,我花了一些时间自己解决了这个问题。如果有人需要,下面是解决方案。
mPlayer.addNotificationCallback(new Player.NotificationCallback() {
@Override
public void onPlaybackEvent(PlayerEvent playerEvent) {
if(playerEvent==PlayerEvent.kSpPlaybackNotifyTrackDelivered){
Toast.makeText(PlaySong.this,"Delivered",Toast.LENGTH_LONG).show();
System.out.println("Delivered");
}
@Override
public void onPlaybackError(Error error) {
}
});
只需检查这个条件if(playerEvent==PlayerEvent.kSpPlaybackNotifyTrackDelivered)