我有一个应用程序,在用户通过几个视图后播放音频。起初所有工作都很好,除非在播放音频时按下后门按钮,此时应用关闭但音频继续播放。在研究之后,我放入了OnDestroy方法并释放了媒体播放器,当播放音频时按下后退按钮时该媒体播放器现在停止。
然而,现在当在媒体播放器启动之前在前一个视图中按下后退按钮时,我收到一个强制关闭消息,而logcat说无法销毁活动 - 我假设因为没有媒体播放器可以释放它?有谁知道发生了什么?
我只在媒体播放时尝试过super.OnDestroy的if语句,但这没有效果。
答案 0 :(得分:0)
如果您尝试释放Mediaplayer
,但如果用户没有播放歌曲则您没有初始化它,那么您将获得例外情况。
通常,验证您的值是否为空可能是关键。还有一件事:不要在onDestroy
中处理这种情况,因为无法保证调用它,如果可能,请更喜欢onStop
。