我正在开发 Android 游戏,并且我正在使用标准的 Android 组件。
我有媒体播放器对象,应该一遍又一遍地播放背景音乐。我已经创作了一些音乐,并进行了渲染……它完美地循环播放。
现在,当我将音乐文件添加到游戏中时……在每个循环音乐停止片刻之前……但这很烦人。为什么会这样?
我已经在 2.3.3 电话设备和 ICS 模拟器上对其进行了测试……每次都会发生同样的事情。
这是我的代码:
/** Play background music */
public static void playMusic() {
if (backgroundMusic == null) {
backgroundMusic = new MediaPlayer();
backgroundMusic.setVolume(0.5f, 0.5f);
try {
backgroundMusic.setDataSource(activity.getAssets()
.openFd("background_music.ogg")
.getFileDescriptor());
backgroundMusic.prepare();
backgroundMusic.setAudioStreamType(AudioManager.STREAM_MUSIC);
backgroundMusic.setLooping(true);
backgroundMusic.start();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
当我在 PC 上的某个播放器中播放相同的文件时,它会循环播放并且听起来非常好...如何解决这个问题?天呐!