依次播放 url 中的音频

Play audio from url one after other

我想自动从 url 一个接一个地 play/stream 音频。​​

这是我尝试过的:

final String audioUrl[] = {"https://www.googleapis.com/storage/v1/b/ezconnectpoc/o/NV.wav?alt=media", "https://www.googleapis.com/storage/v1/b/ezconnectpoc/o/cqo.wav?alt=media"};

backtobackButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        try {
            mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
            mediaPlayer.setDataSource(audioUrl[currentTrack]);
            mediaPlayer.prepareAsync();

            mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                @Override
                public void onPrepared(MediaPlayer mp) {
                    mediaPlayer.start();
                }
            });

            mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
                @Override
                public void onCompletion(MediaPlayer mp) {
                    try {
                        Log.d("Current track",currentTrack+"");
                        Log.d("audioUrl.length",audioUrl.length+"");
                        if (currentTrack < audioUrl.length) {
                            currentTrack++;
                            mediaPlayer.setDataSource(audioUrl[currentTrack]);
                            mediaPlayer.setOnCompletionListener(this);
                            mediaPlayer.start();
                        }
                        mediaPlayer.stop();
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            });
        } catch (Exception e) {
            e.printStackTrace();
            // make something
        }
    }
});

当我点击 backtoback 命名按钮时播放了我的第一个音频 url,但无法播放来自 url.

的第二个音频

更改了这部分代码

mediaPlayer.reset();
mediaPlayer.setDataSource(audioUrl[currentTrack]);
mediaPlayer.prepareAsync();
mediaPlayer.setOnCompletionListener(this);
mediaPlayer.start();
currentTrack++;

并工作。