2010-12-23 79 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完美配合),并且性能似乎变得更好了。不过,我不确定这是否相关。