android - MediaPlayer 在后台播放音频并播放下一首

标签 android media-player

我使用下面的代码在后台播放音频:

String[] Path = new String[] {path1, path2, ...};
mMediaPlayer.setDataSource(Path[i]);
mMediaPlayer.prepare();
mMediaPlayer.start();
mMediaPlayer.seekTo(0);

当我在后台播放第一个 Path[0] 时。 我想让Path[0]播放完后自动播放下一首Path[1],如何实现?

最佳答案

你应该像这样覆盖 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,那么您也可以使用 prepareAsync 命令并忽略 .start()。

关于android - MediaPlayer 在后台播放音频并播放下一首,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10223745/

相关文章:

android - 仅在 Android MediaPlayer 中播放 youtube 视频的音频部分

android - 将 ImageView ScaleType 设置为 "center"无法正常工作

android - 是否有用于在 Android 中查看文档(Word、Excel、Powerpoint、PDF 等)的 Intent?

Android Lollipop 5.1 : Fatal signal 11 (SIGSEGV), 代码 2,错误地址 0x9e985ff8 in tid 4093 (RenderThread)/当使用大量 9-patch 图形时

android - 为什么 JSONObject(jsonString) 构造函数在我的 Android 应用程序中抛出异常?

java - 点击“后退”按钮时 MediaPlayer 出现空指针异常

jquery - 使用 jPlayer 创建自定义音频播放器

python - 将变量从 python 实时传递到 C 的最佳方法

android - 在 Motorola XOOM view.startAnimation 上导致 MediaPlayer 停止

java - 获取回收器 View 位置给出 NullPointerException