我正在使用MediaPlayer在我的應用中播放音樂。當我需要暫停和恢復時,我使用mPlayer.isPlaying()檢查狀態,但是這有時會引發非法狀態異常。媒體播放器isPlaying拋出非法狀態android
爲什麼會發生這種情況?你應該在這些時間做什麼?你如何確定玩家的狀態?
我正在使用MediaPlayer在我的應用中播放音樂。當我需要暫停和恢復時,我使用mPlayer.isPlaying()檢查狀態,但是這有時會引發非法狀態異常。媒體播放器isPlaying拋出非法狀態android
爲什麼會發生這種情況?你應該在這些時間做什麼?你如何確定玩家的狀態?
根據Android的文檔:
「 IllegalStateException異常如果內部播放引擎尚未初始化或已被釋放」
我會先說確保你已經初始化和/或沒有釋放玩家。
雖然MediaPlayer可能很奇怪,即使邏輯已經有意義,也應該使用不同的語句來演奏;如果您發佈了代碼,我可以在這方面爲您提供更多幫助。
現在,您可以使用try-catch語句並在catch中添加一些內容以確保MediaPlayer正常工作。
編輯1:只要在黑暗中猜測,如果您爲MediaPLayer使用靜態全局變量,那可能是問題所在。我會仔細檢查它是如何被初始化和釋放的,特別是在類和類之間切換時。
請顯示編碼:) 也Logs。謝謝! – 2012-08-31 03:58:53