当游戏活动恢复时,与Cocos2d-android的Framedrops

时间:2012-01-13 02:06:27

标签: java android cocos2d-android

我正在为Android尝试一些游戏引擎并遇到cocos2d-android-1。 我已经设置了一个小例子,除了显示一个FPS计数器之外什么都没做。

问题在于,每次活动进入后台(通过主页或后退键)并返回时,FPS会下降很多。在第一次开始时他们对我来说是60左右(HTC Desire),在恢复活动后他们保持在10以下。

活动在清单中固定为横向,并使用@android:style/Theme.Black.NoTitleBar.Fullscreen启用全屏模式。

当我从设备设置中的应用程序菜单停止应用程序时,它会重置所有内容。第一次发布再次获得60 fps,下一次发布也下降了。

我该如何解决这个问题?

这是一个小样本:

public class MainActivity extends Activity {

    private CCGLSurfaceView glSurfaceView;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        glSurfaceView = new CCGLSurfaceView(this);
        setContentView(glSurfaceView);
    }

    @Override
    public void onStart() {
        super.onStart();

        CCDirector.sharedDirector().attachInView(glSurfaceView);
        CCDirector.sharedDirector().setDisplayFPS(true);
    }

    @Override
    public void onPause() {
        super.onPause();

        CCDirector.sharedDirector().pause();
    }
}

1 个答案:

答案 0 :(得分:0)

好的修好了。显然我忘了给导演打电话给简历()。 将此添加到上面的代码中它可以正常工作:

@Override
public void onResume() {
    super.onResume();
    CCDirector.sharedDirector().resume();
}