Android 0xdeadbaad(代码=1)处的致命信号11(SIGSEGV)错误

Android 0xdeadbaad(代码=1)处的致命信号11(SIGSEGV)错误,android,andengine,Android,Andengine,我在安卓系统上做一个游戏项目,里面有一个像果仁忍者一样的安卓引擎,我用它从下到上投掷图像 项目运行良好,但有时会出现错误 我使用了System.gc(),但没有帮助 0xdeadbaad(代码=1)处的致命信号11(SIGSEGV) 我的代码是 private void throwHardware(final float pX, final float pY) { final FixtureDef boxFixtureDef = PhysicsFactory.createFixture

我在安卓系统上做一个游戏项目,里面有一个像果仁忍者一样的安卓引擎,我用它从下到上投掷图像 项目运行良好,但有时会出现错误 我使用了System.gc(),但没有帮助

0xdeadbaad(代码=1)处的致命信号11(SIGSEGV)

我的代码是

private void throwHardware(final float pX, final float pY) {

    final FixtureDef boxFixtureDef = PhysicsFactory.createFixtureDef(0.1f,
            0.5f, 0.5f);
    boxFixtureDef.filter.categoryBits = 0x0002;
    boxFixtureDef.filter.maskBits = 0x0004;
    boxFixtureDef.filter.groupIndex = 2;
    Random rng = new Random();
    generated1 = new ArrayList<Integer>();
    r = rng.nextInt(8);
    Log.e(Integer.toString(r), "r");
    if (r == 0) {
        Hardware = new Sprite(pX, pY, java,
                this.getVertexBufferObjectManager());
        body = PhysicsFactory.createBoxBody(this.mPhysicsWorldg, Hardware,
                BodyType.DynamicBody, boxFixtureDef);
        mHardware[active] = new Sprite(pX, pY, java,
                this.getVertexBufferObjectManager()) {
            @Override
            public boolean onAreaTouched(TouchEvent pSceneTouchEvent,
                    float X, float Y) {
                if (pSceneTouchEvent.isActionDown()) {

                    if (a == 0) {
                        score();
                        remove();
                        question();
                    } else {
                        remove();
                        wrong();
                        question();

                    }
                    return true;
                }
                return true;
            };
        };
    } else if (r == 1) {
        Hardware = new Sprite(pX, pY, facebook,
                this.getVertexBufferObjectManager());
        body = PhysicsFactory.createBoxBody(this.mPhysicsWorldg, Hardware,
                BodyType.DynamicBody, boxFixtureDef);

        mHardware[active] = new Sprite(pX, pY, this.facebook,
                this.getVertexBufferObjectManager()) {
            @Override
            public boolean onAreaTouched(TouchEvent pSceneTouchEvent,
                    float X, float Y) {
                if (pSceneTouchEvent.isActionDown()) {
                    if (a == 1) {
                        score();
                        remove();
                        question();
                    } else {
                        remove();
                        wrong();
                        question();
                    }
                    return true;
                }
                return true;
            };
        };
    } else if (r == 2) {
        Hardware = new Sprite(pX, pY, android,
                this.getVertexBufferObjectManager());
        body = PhysicsFactory.createBoxBody(this.mPhysicsWorldg, Hardware,
                BodyType.DynamicBody, boxFixtureDef);
        mHardware[active] = new Sprite(pX, pY, android,
                this.getVertexBufferObjectManager()) {
            @Override
            public boolean onAreaTouched(TouchEvent pSceneTouchEvent,
                    float X, float Y) {
                if (pSceneTouchEvent.isActionDown()) {
                    if (a == 2) {
                        score();
                        remove();
                        question();
                    } else {
                        remove();
                        wrong();
                        question();

                    }
                    return true;
                }
                return true;
            };
        };
    } else if (r == 3) {
        Hardware = new Sprite(pX, pY, usb,
                this.getVertexBufferObjectManager());
        body = PhysicsFactory.createBoxBody(this.mPhysicsWorldg, Hardware,
                BodyType.DynamicBody, boxFixtureDef);
        mHardware[active] = new Sprite(pX, pY, usb,
                this.getVertexBufferObjectManager()) {
            @Override
            public boolean onAreaTouched(TouchEvent pSceneTouchEvent,
                    float X, float Y) {
                if (pSceneTouchEvent.isActionDown()) {
                    if (a == 3) {
                        score();
                        remove();
                        question();
                    } else {
                        remove();
                        wrong();
                        question();

                    }
                    return true;
                }
                return true;
            };
        };
    } else if (r == 4) {
        Hardware = new Sprite(pX, pY, google,
                this.getVertexBufferObjectManager());
        body = PhysicsFactory.createBoxBody(this.mPhysicsWorldg, Hardware,
                BodyType.DynamicBody, boxFixtureDef);
        mHardware[active] = new Sprite(pX, pY, google,
                this.getVertexBufferObjectManager()) {
            @Override
            public boolean onAreaTouched(TouchEvent pSceneTouchEvent,
                    float X, float Y) {
                if (pSceneTouchEvent.isActionDown()) {
                    if (a == 4) {
                        score();
                        remove();
                        question();
                    } else {
                        remove();
                        question();
                        wrong();
                    }
                    return true;
                }
                return true;
            };
        };
    } else if (r == 5) {
        Hardware = new Sprite(pX, pY, ram,
                this.getVertexBufferObjectManager());
        body = PhysicsFactory.createBoxBody(this.mPhysicsWorldg, Hardware,
                BodyType.DynamicBody, boxFixtureDef);
        mHardware[active] = new Sprite(pX, pY, ram,
                this.getVertexBufferObjectManager()) {
            @Override
            public boolean onAreaTouched(TouchEvent pSceneTouchEvent,
                    float X, float Y) {
                if (pSceneTouchEvent.isActionDown()) {
                    if (a == 5) {
                        score();
                        remove();
                        question();
                    } else {
                        remove();
                        question();
                        wrong();
                    }
                    return true;
                }
                return true;
            };
        };
    } else if (r == 6) {
        Hardware = new Sprite(pX, pY, cd,
                this.getVertexBufferObjectManager());
        body = PhysicsFactory.createBoxBody(this.mPhysicsWorldg, Hardware,
                BodyType.DynamicBody, boxFixtureDef);
        mHardware[active] = new Sprite(pX, pY, cd,
                this.getVertexBufferObjectManager()) {
            @Override
            public boolean onAreaTouched(TouchEvent pSceneTouchEvent,
                    float X, float Y) {
                if (pSceneTouchEvent.isActionDown()) {
                    if (a == 6) {
                        score();
                        remove();
                        question();
                    } else {

                        remove();
                        wrong();
                        question();
                    }
                    return true;
                }
                return true;
            }

        };
    } else if (r == 7) {
        Hardware = new Sprite(pX, pY, samsung,
                this.getVertexBufferObjectManager());
        body = PhysicsFactory.createBoxBody(this.mPhysicsWorldg, Hardware,
                BodyType.DynamicBody, boxFixtureDef);
        mHardware[active] = new Sprite(pX, pY, samsung,
                this.getVertexBufferObjectManager()) {
            @Override
            public boolean onAreaTouched(TouchEvent pSceneTouchEvent,
                    float X, float Y) {
                if (pSceneTouchEvent.isActionDown()) {
                    if (a == 7) {
                        score();
                        remove();
                        question();
                    } else {
                        remove();
                        wrong();
                        question();
                    }
                    return true;
                }
                return true;
            };
        };
    }

    mHardwareBody[active] = PhysicsFactory.createBoxBody(
            this.mPhysicsWorldg, mHardware[active], BodyType.DynamicBody,
            boxFixtureDef);

    scene.attachChild(mHardware[active]);

    this.mPhysicsWorldg.registerPhysicsConnector(new PhysicsConnector(
            mHardware[active], mHardwareBody[active], true, false));

    Vector2 velocity = Vector2Pool.obtain(-1, -16);
    body.setTransform(velocity, 85);
    mHardwareBody[active].setLinearVelocity(velocity);
    Vector2Pool.recycle(velocity);
    this.scene.registerTouchArea(mHardware[active]);

}
private void throwHardware(最终浮点pX,最终浮点pY){
final FixtureDef boxFixtureDef=PhysicsFactory.createFixtureDef(0.1f,
0.5f,0.5f);
boxFixtureDef.filter.categoryBits=0x0002;
boxFixtureDef.filter.maskBits=0x0004;
boxFixtureDef.filter.groupIndex=2;
随机rng=新随机();
generated1=新的ArrayList();
r=rng.nextInt(8);
Log.e(整数toString(r),“r”);
如果(r==0){
硬件=新精灵(pX、pY、java、,
这是.getVertexBufferObjectManager());
body=PhysicsFactory.createBoxBody(this.mpPhysicsWorldG,Hardware,
BodyType.DynamicBody,boxFixtureDef);
mHardware[active]=新精灵(pX、pY、java、,
此文件为.getVertexBufferObjectManager()){
@凌驾
公共布尔值OnRealTouched(TouchEvent pSceneTouchEvent,
浮动X,浮动Y){
if(pSceneTouchEvent.isActionDown()){
如果(a==0){
分数();
删除();
问题();
}否则{
删除();
错();
问题();
}
返回true;
}
返回true;
};
};
}else如果(r==1){
硬件=新精灵(pX、pY、facebook、,
这是.getVertexBufferObjectManager());
body=PhysicsFactory.createBoxBody(this.mpPhysicsWorldG,Hardware,
BodyType.DynamicBody,boxFixtureDef);
mHardware[active]=新精灵(pX,pY,this.facebook,
此文件为.getVertexBufferObjectManager()){
@凌驾
公共布尔值OnRealTouched(TouchEvent pSceneTouchEvent,
浮动X,浮动Y){
if(pSceneTouchEvent.isActionDown()){
如果(a==1){
分数();
删除();
问题();
}否则{
删除();
错();
问题();
}
返回true;
}
返回true;
};
};
}else如果(r==2){
硬件=新精灵(pX、pY、android、,
这是.getVertexBufferObjectManager());
body=PhysicsFactory.createBoxBody(this.mpPhysicsWorldG,Hardware,
BodyType.DynamicBody,boxFixtureDef);
mHardware[active]=新精灵(pX、pY、android、,
此文件为.getVertexBufferObjectManager()){
@凌驾
公共布尔值OnRealTouched(TouchEvent pSceneTouchEvent,
浮动X,浮动Y){
if(pSceneTouchEvent.isActionDown()){
如果(a==2){
分数();
删除();
问题();
}否则{
删除();
错();
问题();
}
返回true;
}
返回true;
};
};
}else如果(r==3){
硬件=新精灵(pX、pY、usb、,
这是.getVertexBufferObjectManager());
body=PhysicsFactory.createBoxBody(this.mpPhysicsWorldG,Hardware,
BodyType.DynamicBody,boxFixtureDef);
mHardware[活动]=新精灵(pX、pY、usb、,
此文件为.getVertexBufferObjectManager()){
@凌驾
公共布尔值OnRealTouched(TouchEvent pSceneTouchEvent,
浮动X,浮动Y){
if(pSceneTouchEvent.isActionDown()){
如果(a==3){
分数();
删除();
问题();
}否则{
删除();
错();
问题();
}
返回true;
}
返回true;
};
};
}else如果(r==4){
硬件=新精灵(pX、pY、谷歌、,
这是.getVertexBufferObjectManager());
body=PhysicsFactory.createBoxBody(this.mpPhysicsWorldG,Hardware,
BodyType.DynamicBody,boxFixtureDef);
mHardware[active]=新精灵(pX、pY、google、,
此文件为.getVertexBufferObjectManager()){
@凌驾
公共布尔值OnRealTouched(TouchEvent pSceneTouchEvent,
浮动X,浮动Y){
if(pSceneTouchEvent.isActionDown()){
如果(a==4){
分数();
删除();
问题();
}否则{
删除();
问题();
错();
}
返回true;
}
返回true;
};
};
}否则如果(r==5){
硬件=新精灵(pX、pY、ram、,
这是.getVertexBufferObjectManager());
body=PhysicsFactory.createBoxBody(this.mpPhysicsWorldG,Hardware,
BodyType.DynamicBody,boxFixtureDef);
mHardware[活动]=新精灵(pX、pY、ram、,
此文件为.getVertexBufferObjectManager()){
@凌驾
公共布尔值OnRealTouched(TouchEvent pSceneTouchEvent,
浮动X,浮动Y){