Java OnLoadCompleteListener从不触发
我正在为一个游戏编写代码,并尝试加载声音。我希望背景音乐立即开始播放-因此我编写了以下代码:Java OnLoadCompleteListener从不触发,java,android,soundpool,Java,Android,Soundpool,我正在为一个游戏编写代码,并尝试加载声音。我希望背景音乐立即开始播放-因此我编写了以下代码: //load the sounds sPool = new SoundPool(3, AudioManager.STREAM_MUSIC,0); explosionID = sPool.load(context, R.raw.explosion, 1); swapID = sPool.load(context, R.raw.swap,1); sPool.setOnLoadCompleteListene
//load the sounds
sPool = new SoundPool(3, AudioManager.STREAM_MUSIC,0);
explosionID = sPool.load(context, R.raw.explosion, 1);
swapID = sPool.load(context, R.raw.swap,1);
sPool.setOnLoadCompleteListener(new OnLoadCompleteListener()
{
@Override
public void onLoadComplete(SoundPool soundPool, int sampleId, int status)
{
//start playing the background music
sPool.play(backgroundMusicID, 0.5f, 0.5f, 3, 1, 1f);
}
});
backgroundMusicID = sPool.load(context, R.raw.alchemists_tower,1);
其他声音正在加载并正常工作,但背景音乐似乎从未开始。我在侦听器中设置了一个断点,它似乎从未触发。文件本身约为半mb(“爆炸”为250 kb,工作正常)。背景音乐也有一个正确的id(通过调试器检查)
只有在卸载该活动后(当我加载另一个活动时),才会出现触发。我做错了什么?好了,终于解决了。原因是AudioFlinger未能加载错误-12 最后不得不换成使用媒体播放器播放背景音乐,因为我不知道我是如何耗尽内存的