2010-12-20 97 views
10

我可以流式傳輸音頻並且沒有任何問題地停止它,但是當我在停止之後嘗試再次啓動它時,它不會啓動並且出現IllegalState異常。Android媒體播放器在呼叫停止後重新啓動音頻

下面是我在做什麼:

開始播放

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

停止播放

mediaPlayer.stop 

現在,如果我要重新開始播放同一個媒體,我將要得做?

* PATH是連續運行的廣播電臺的URL。

+0

你可以發佈你的代碼來理解嗎? – Sandy 2010-12-20 05:34:47

+0

已修復。停車後我沒有打電話重置。 – Sharj 2010-12-20 19:33:15

回答

7

補充一點:

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

如果您沒有訪問到當前範圍內的數據源,你可以這樣做:

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

然後當你做

mp.start(); 

發揮會再次從頭開始。

我需要這個,因爲我有一個按鈕來切換播放。我有一個togglePlayer方法,其中數據源超出了範圍。

+0

是的,它很簡單,工作! – 2017-05-11 01:14:34