AndEngine SoundManager中的空指针异常

时间:2011-11-17 12:27:43

标签: android andengine

我刚刚编写了从AndExample复制的以下行。

try {
        this.collision_sound = SoundFactory.createSoundFromAsset(this.mEngine.getSoundManager(), this, "touch.ogg");
    } catch (IllegalStateException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        Log.d("Error","in creation "+e);
    }

this.collision_sound.play();

现在的问题是,当我播放声音时,它会给我一个空指针异常。任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

您的代码似乎没问题。尝试将createsound函数放在AndEngine的onLoad()方法中,并在另一个地方调用play()方法。我想你没有给引擎设置声音变量的时间。

答案 1 :(得分:1)

最后我明白了问题所在。实际上上面的代码是正确的,我错过的是当我创建引擎时我错过了为负载引擎中的声音设置选项,如。

new Engine(new EngineOptions(true, ScreenOrientation.LANDSCAPE, new RatioResolutionPolicy(CAMERA_WIDTH, CAMERA_HEIGHT), this.mCamera).setNeedsSound(true));

这解决了我的问题我错过了.setNeedsSound(true)选项。