强制关闭如果mediaplayer不使用和后退按钮推
问题描述:
在一个活动中,我使用两个媒体播放器为不同的声音,如果两个声音播放和后退按钮被推没有问题,它工作正常。媒体播放器停止和释放。(MP设置为循环,MPS只是扮演一个短声)强制关闭如果mediaplayer不使用和后退按钮推
@Override
protected void onPause() {
// TODO Auto-generated method stub
mp.stop();
super.onPause();
}
@Override
protected void onStop() {
// TODO Auto-generated method stub
mp.release();
mps.release();
super.onStop();
}
但是,如果一个和/或两个声音都没有打过我得到一个强制关闭时,后退按钮是推送和空指针异常。你将如何编写代码来检查媒体播放器是否曾经使用过,因此需要停止并释放它们?
答
如果您在onPause和onStop中获得空指针,则需要检查mp是否为空。
@Override
protected void onPause() {
if (mp != null)
mp.stop();
super.onPause();
}
@Override
protected void onStop() {
if (mp != null)
mp.release();
if (mps != null)
mps.release();
super.onStop();
}
你可以保持一个计数,如果你愿意,但是这意味着保持另一个变量的轨道时,你已经有机会获得你需要
+0
我得到它的工作!我在播放短音后直接释放媒体播放器,并使用if(mp!= null)停止并在onPause上释放。谢谢大家的建议。 – kmb 2012-03-08 18:14:11
答
你可以使用一个计数,并添加一个,如果有一个游戏,然后检查它是否等于0或不。
你可以使用一个数,如果添加一个给它的变量有一直在玩,然后检查它是否等于0。 – bobthemac 2012-03-08 16:29:55
我会试一试,谢谢。 – kmb 2012-03-08 17:02:28