[問題] MediaPlayer 只能執行一次 ><"

看板AndroidDev作者 (smile D)時間13年前 (2011/07/07 04:42), 編輯推噓1(106)
留言7則, 2人參與, 最新討論串1/1
開發層: (應用/框架/庫/核心) 應用 問題: 無法執行第二次撥放音效 預期輸出: 當手機移動時,會發出音效 錯誤輸出: 可是只要按下返回鍵或是Home鍵回到桌面 再次進去時,不管怎麼移動,都沒有撥出音效 必須要重新開機,才能成功執行一次 ... 冏 程式碼: (請多利用置底文網站) ... private mMediaPlayer mMediaPlayer01; public void onCreate(省略){ ... mMediaPlayer01 = new MediaPlayer(); mMediaPlayer01 = MediaPlayer.create(this, R.raw.source); ... } ... if(result == 1){ if(!mMediaPlayer01.isPlaying()){ try{ if(mMediaPlayer01 != null){ mMediaPlayer01.stop(); } mMediaPlayer01.prepare(); mMediaPlayer01.start(); }catch(Exception e){ e.printStackTrace(); } } ... 補充說明: 麻煩各位了 謝謝 :) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.98.88

07/07 06:14, , 1F
可能是離開activity沒有關掉mediaplayer.
07/07 06:14, 1F

07/07 06:15, , 2F
在 onPause() 裡, 加上關掉mediaplayer的指令看看.
07/07 06:15, 2F

07/07 09:29, , 3F
我來試試看 :P
07/07 09:29, 3F

07/07 09:33, , 4F
加上了mMediaPlayer01.release();
07/07 09:33, 4F

07/07 09:36, , 5F
^口^ 原來是我release()放的地方錯了
07/07 09:36, 5F

07/07 09:37, , 6F
改至onPause()就OK了!! 感謝e大
07/07 09:37, 6F

07/07 09:47, , 7F
先前是放在一個Button的onClick裡面,在關掉前先release
07/07 09:47, 7F
文章代碼(AID): #1E5CYXXo (AndroidDev)
文章代碼(AID): #1E5CYXXo (AndroidDev)