Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/194.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java OnLoadCompleteListener从不触发_Java_Android_Soundpool - Fatal编程技术网

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

最后不得不换成使用媒体播放器播放背景音乐,因为我不知道我是如何耗尽内存的