我使用下面的代码在后台播放音频:
String[] Path = new String[] {path1, path2, ...};
mMediaPlayer.setDataSource(Path[i]);
mMediaPlayer.prepare();
mMediaPlayer.start();
mMediaPlayer.seekTo(0);
我在后台播放第一个Path [0]。 我想在Path [0]播放结束后自动播放下一个Path [1],如何到达它?
答案 0 :(得分:24)
你应该像这样重写onCompletionListener,
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();
}
});
如果在MediaPlayer中使用onPreparedListener,则cal也使用prepareAsync命令并忽略.start()。
答案 1 :(得分:3)
您需要将OnCompletionListener设置为您的MediaPlayer,在侦听器中将源设置为path2,准备并播放。 http://developer.android.com/reference/android/media/MediaPlayer.OnCompletionListener.html