2010-12-23 97 views
3

我最近添加了簡單的循環背景音樂到我的Android遊戲。它使用Canvas繪製到屏幕上,所以我非常小心優化性能。我使用標準MediaPlayer添加了音樂,這似乎是處理循環音樂最常見和最簡單的方法。不幸的是,我在偶爾跳過音樂時遇到了麻煩,而且更糟糕的是,有時會在遊戲中造成顯着的延遲。添加音樂到Android遊戲時防止跳過或滯後

我唯一需要測試的手機是Droid Eris,這是一款相當老的手機,所以我懷疑這對新款Android手機不是問題,但我希望我的遊戲能夠在所有Android設備上播放。如何在保持合理性能的同時添加音樂?

這是我添加的代碼:我還沒有遇到過這個問題

// in setup() method of game thread 
mediaPlayer = MediaPlayer.create(context, R.raw.rl_theme); 
mediaPlayer.setLooping(true); 
mediaPlayer.start(); 
// in method called when the player looses 
mediaPlayer.stop(); 
mediaPlayer.release(); 

回答

0

看起來沒有什麼可以做。是的,添加音樂確實會降低Android應用程序的運行速度,但它似乎不是新手機上的主要問題。我確實將音頻文件的格式從OGG更改爲MP4,以修復似乎是Android MediaPlayer中的錯誤(仍在研究它,但媒體服務器在OGG上崩潰並與MP4完美配合),並且性能似乎變得更好了。不過,我不確定這是否相關。