最近在开发的时候,碰到游戏安装后直接打开,然后切换后台或者home之后,再点击图标启动游戏,游戏会黑屏,只剩下文字。调试后发现是再次点击图标打开的时候,再次执行了AppActivity里面的onCreate函数导致的。
解决办法:在AppActivity的onCreate函数添加如下代码
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (!isTaskRoot()) {
/* If this is not the root activity */
Intent intent = getIntent();
String action = intent.getAction();
if (intent.hasCategory(Intent.CATEGORY_LAUNCHER) && Intent.ACTION_MAIN.equals(action)) {
finish();
return;
}
}
}
其中isTaskRoot()是用来判断当前的activity是不是第一个activity的。