您的位置:首页 > 其它

launcher启动应用重启的BUG解决

2015-11-12 14:52 288 查看
最近遇到了一个问题,从launcher重新进入已经运行的应用会直接跳到应用的第一个界面。

经过对应用的跟踪,结合网络上的资料

http://stackoverflow.com/questions/19545889/app-restarts-rather-than-resumes

定位了BUG。

【BUG描述】

这个是一个Android BUG, 其实应用并没有完全重启,只是又启动了一个第一界面,然后放到了任务栈的顶部,这时候,我们点击BACK会回到我们期望的正确界面。

操作步骤为,安装,点击开始,点击HOME,点击图标。

【解决】

这个问题的解决思路是,在第一个界面的oncreate里面判断当前应用是否已经启动,并判断intent信息,如果已经启动过了,并且信息符合,那么我们就结束这个新开的第一界面。

代码如下

private void checkIsRunning()
{
if (!isTaskRoot()
&&   getIntent().hasCategory(Intent.CATEGORY_LAUNCHER)
&& getIntent().getAction() != null
&& getIntent().getAction().equals(Intent.ACTION_MAIN)) {
finish();
return;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: