我能够流式传输音频并且没有任何问题地停止它,但是当我尝试在停止后再次启动它时,它不会启动并且我得到一个IllegalState异常。
以下是我正在做的事情:
开始播放
mediaPlayer.setDataSource(PATH);
mediaPlayer.prepare();
mediaPlayer.start();
停止播放
mediaPlayer.stop
现在,如果我想再次开始播放相同的媒体,我该怎么做?
* PATH是连续运行的无线电台的URL。
答案 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的状态图 媒体播放器停止后,必须调用准备,准备好后再调用启动方法。