MediaPlayer play audio in background and play next one

android, media-player

Solution

You should override onCompletionListener like this,

mMediaPlayer.setOnCompletionListener(new OnCompletionListener() {           
    public void onCompletion(MediaPlayer mp) {          
        Log.i("Completion Listener","Song Complete");
        mp.stop();
        mp.reset();
        mp.setDataSource([nextElement]);
        mp.prepare();
        mp.start();
    }
});

If you use a onPreparedListener in your MediaPlayer then you cal also use the prepareAsync command and ignore the .start().

Problem

I use below code to play audio in background: ``` String[] Path = new String[] {path1, path2, ...}; mMediaPlayer.setDataSource(Path[i]); mMediaPlayer.prepare(); mMediaPlayer.start(); mMediaPlayer.seekTo(0); ``` While I play the first one Path[0] in background. I want to make it auto play next one Path[1] after Path[0] play finish, how to arrive it?

Original source