0

我在android中制作了一个应用程序,我的问题是当我播放流时它播放得很好但是当我点击停止按钮然后点击播放按钮然后歌曲没有播放,怎么做?如果有人知道,请帮助我。下面是我写的代码:-

    // method for play stream after stop it.
public void startradio(View v) {
        try{
            if(mp.isPlaying()){
                return;
            }
               mp.start();
        } catch(IllegalStateException ex){
            ex.printStackTrace();
        } 
    }

// method for stop stream.
public void stopradio(View v) {
    if(mp.isPlaying()){
        mp.stop();
    }
    mp.release();
}
4

1 回答 1

0

@Eluvatar 的评论非常接近,但没有雪茄。

如果您这样做,您的应用程序仍将处于错误状态,并且需要在再次调用 start() 之前调用 prepare()。您应该查看MediaPlayer 的事件周期

换句话说,可能的变化是

// method for play stream after stop it.
public void startradio(View v) {
        try{
            if(mp.isPlaying()){
                return;
            }
            mp.prepare();
            mp.start();
        } catch(IllegalStateException ex){
            ex.printStackTrace();
        } 
    }

// method for stop stream.
public void stopradio(View v) {
    if(mp.isPlaying()){
        mp.stop();
    }

}
于 2013-04-26T22:38:00.390 回答