安卓安装apk之后直接打开和点击打开的区别

最近在开发的时候,碰到游戏安装后直接打开,然后切换后台或者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的。

你可能感兴趣的:(cocos2d-x的开发日常)