在播放音乐的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();
}
但有时它工作正常,但有时音乐不会停止!
任何人都可以建议我在离开活动时如何停止音乐:)
答案 0 :(得分:1)
试试这个:
@Override
protected void onPause() {
super.onPause();
isBeeping = false;
if (m != null)
m.release();
}
感谢。