Android:重置音频

时间:2016-09-23 03:34:02

标签: android audio android-mediaplayer

我在实施媒体播放器时遇到了一些问题。我不知道如何重置音频。当点击播放按钮时,我应该实现什么才能使音频停止并再次播放。请告诉我。谢谢。

以下是代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);


Button btnPlay = (Button) findViewById(R.id.btnPlay);
Button btnPause = (Button) findViewById(R.id.btnPause);
Button btnStop = (Button) findViewById(R.id.btnStop);

final MediaPlayer sound = MediaPlayer.create(MainActivity.this, R.raw.doa);

btnPlay.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v)
    {
        sound.start(); 
        Toast.makeText(getBaseContext(), "Play Audio", Toast.LENGTH_SHORT).show();
    }

});

btnPause.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        sound.pause();
        Toast.makeText(getBaseContext(), "Pause Audio", Toast.LENGTH_SHORT).show();

    }
});

btnStop.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        sound.reset();
        if (null!=sound){
            sound.stop();
            sound.reset();
            sound.release();
            sound=null;

            }
        }
    });
}
}

2 个答案:

答案 0 :(得分:0)

停止播放时,需要在开始播放前再次准备。

mediaPlayer.prepare(); mediaPlayer.start();

您可以在https://developer.android.com/reference/android/media/MediaPlayer.html

处查看MediaPlayer的状态图

答案 1 :(得分:0)

Media Recorder类不支持暂停和恢复,请参阅第二个链接类概述尝试使用停止并重新启动..

在新的API级别24中,它为暂停链接提供了一个方法:https://developer.android.com/reference/android/media/MediaRecorder.html#pause()在简历链接上:https://developer.android.com/reference/android/media/MediaRecorder.html#resume()

尝试使用此代码停止:

if (null != sound) {
            sound.stop();
            sound.reset();
            sound.release();
            sound= null;
        }