Android Media Player在调用Stop后重新启动音频

时间:2010-12-20 04:13:18

标签: android audio media-player

我能够流式传输音频并且没有任何问题地停止它,但是当我尝试在停止后再次启动它时,它不会启动并且我得到一个IllegalState异常。

以下是我正在做的事情:

开始播放

mediaPlayer.setDataSource(PATH);
mediaPlayer.prepare();
mediaPlayer.start();

停止播放

mediaPlayer.stop

现在,如果我想再次开始播放相同的媒体,我该怎么做?

* PATH是连续运行的无线电台的URL。

3 个答案:

答案 0 :(得分:28)

如果您无法访问当前范围内的数据源,您可以执行以下操作:

mp.pause();
mp.seekTo(0);

然后当你做

mp.start();

播放将从头开始。

我需要这个,因为我有一个切换按钮的按钮。我有一个togglePlayer方法,其中数据源超出了范围。

答案 1 :(得分:9)

添加:

mp.reset();
mp.setDataSource(MEDIA_PATH);
mp.prepare();
mp.start();

答案 2 :(得分:5)

您可以查看媒体播放器http://developer.android.com/reference/android/media/MediaPlayer.html的状态图 媒体播放器停止后,必须调用准备,准备好后再调用启动方法。