有些时候音乐不会停止Android

时间:2013-01-27 05:56:11

标签: android

在播放音乐的onCreate方法上有一个函数被调用...

    public void playBeep() {
    try {

        if (m.isPlaying()) {
            m.stop();
            m.release();
            m = new MediaPlayer();
        }
        AssetFileDescriptor descriptor = getAssets().openFd("beep.mp3");
        m.setDataSource(descriptor.getFileDescriptor(), descriptor.getStartOffset(), descriptor.getLength());
        descriptor.close();

        m.prepare();
        m.setVolume(1f, 1f);
        m.setLooping(true);
        m.start();
    } catch (Exception e) {
        e.printStackTrace();
    }
   }

并且在onPause方法上我编写了停止音乐的代码,所以当用户离开活动时,音乐会自动停止...

        @Override
protected void onPause() {
    isBeeping = false;
    if (m != null) {

        if (m.isPlaying()) {
            m.stop();
            m.release();
        }
    }
    super.onPause();
}

但有时它工作正常,但有时音乐不会停止!

任何人都可以建议我在离开活动时如何停止音乐:)

1 个答案:

答案 0 :(得分:1)

试试这个:

@Override
protected void onPause() {
    super.onPause(); 
    isBeeping = false;
    if (m != null)
       m.release();       
}

感谢。