音频在Android Media Player中播放两次

时间:2016-06-11 11:08:35

标签: android android-mediaplayer

在我的应用程序中,我有一个负责播放放在raw目录下的文件的方法。但是当我用onResume()方法调用该函数时,声音会播放两次。即使我用Google搜索并尝试了不同的解决方案。即使检查mediaPlayer.isPlaying()然后停止MediaPlayer实例,但仍然没有得到任何帮助。

private void EnglishSound(){
        if(mediaPlayer1!=null){
            if(mediaPlayer1.isPlaying()){
                mediaPlayer1.stop();

            }
            mediaPlayer1.reset();
             mediaPlayer1.release();
        }

        mediaPlayer1 = MediaPlayer.create(this, R.raw.p012);

            mediaPlayer1.start();

    }

 public void onResume() {
        super.onResume();
       EnglishSound();

    }

EnglishSound()在整个活动中的其他位置被称为no。甚至尝试过调试,但它从不进入包含isPlaying()的if块。

1 个答案:

答案 0 :(得分:2)

尝试释放onPause()

 public void onPause() {
    super.onPause();
    if(mediaPlayer1 != null)
      mediaPlayer1.release();
}