2010-12-20 3 views
10

Ich bin in der Lage, Audio zu streamen und ohne Probleme zu stoppen, aber wenn ich versuche, es nach dem Start erneut zu starten, startet es nicht und ich bekomme eine IllegalState Ausnahme. HierAndroid Media Player Audio neu starten nach Aufruf Stop

ist, was ich tue:

starten Spielen

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

Stopp Spielen

mediaPlayer.stop 

Nun, wenn ich wieder das gleiche Medium zu spielen beginnen möchten, was ich will zu tun haben?

* PATH ist die URL einer kontinuierlich laufenden Radiostation.

+0

Können Sie Ihren Code für das Verständnis veröffentlichen? – Sandy

+0

Korrigiert. Ich rufe nicht nach dem Reset zurück. – Sharj

Antwort

7

Fügen Sie diese:

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

Falls Sie haben keinen Zugriff auf die Datenquelle in dem aktuellen Bereich, können Sie tun:

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

Dann, wenn Sie tun

mp.start(); 

Spiel wird von Anfang an neu beginnen.

Ich brauchte das, weil ich eine Taste hatte, die das Abspielen umgeschaltet hat. Ich hatte eine togglePlayer-Methode, bei der die Datenquelle nicht mehr verfügbar war.

+0

Ja, es ist einfach und funktioniert! –