Android Media Player Restart Audio After Calling Stop

Sharj picture Sharj · Dec 20, 2010 · Viewed 20.5k times · Source

I'm able to stream audio and stop it without any problem, but when I try to start it again after stop, it doesn't start and I get an IllegalState exception.

Here is what I'm doing:

Start Playing

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

Stop Playing

mediaPlayer.stop

Now, if I want to start playing again the same media, what will I have to do?

*PATH is the URL of a continuous running radio station.

Answer

abalter picture abalter · Jun 1, 2014

In case you don't have access to the data source in the current scope, you can do:

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

Then when you do

mp.start();

play will start from the beginning again.

I needed this because I had a button that toggled playing. I had a togglePlayer method in which the datasource was out of scope.