媒体播放器正在播放抛出非法状态的android

时间:2012-08-31 03:56:47

标签: android try-catch state android-mediaplayer illegalstateexception

我正在使用MediaPlayer在我的应用中播放音乐。当我需要暂停和恢复时,我使用mPlayer.isPlaying()检查状态,但这有时会抛出非法状态异常。

为什么会这样?在这些时候你应该怎么做?你如何确定玩家的状态?

1 个答案:

答案 0 :(得分:5)

根据Android文档:

“如果内部播放器引擎尚未初始化或已被释放,则为IllegalStateException。”

我会说首先要确保你已经初始化和/或没有释放播放器。

MediaPlayer可能很奇怪;即使逻辑已经有意义,也值得玩弄不同的陈述;如果您发布代码,我可以在这方面为您提供更多帮助。

现在,您可以使用try-catch语句并在catch中添加一些内容以确保MediaPlayer正常工作。

Edit1:只是在黑暗中猜测,如果你使用MediaPLayer的静态全局变量,那可能就是问题所在。我会仔细检查它是如何初始化和释放的,特别是在类之间切换时。