App首次安装在安装界面打开,按home键从桌面launcher打开应用,重复实例化launcher activit

前端之家收集整理的这篇文章主要介绍了App首次安装在安装界面打开,按home键从桌面launcher打开应用,重复实例化launcher activit前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. 在package installers 安装界面安装完一个应用后,直接打开app,然后进入了 Activity_1,此时再通过此activity用startActivity(intent)的方法打开 Activity_2.

  2. 然后按home键返回桌面,在桌面点击app图标进入,你觉得应该进入的是 Activity_2 ,实际上却是launcher Activity_1 .

  3. 然而还没完,这时候你按 back 返回键,会发现返回到了之前打开的 Activity_2,再按返回,又出现 launcherActivity_1. 也就是说系统重复实例化了Activity_1.

  4. 退出app后再次点击桌面图标进入,反复试验,没有再出现这个问题。也就是说,这个问题(bug ?)只出现在操作步骤(1)后才会产生.

在super.onCreate(...)方法之后插入代码

if (mainIntent.hasCategory(Intent.CATEGORY_LAUNCHER) && action.equals(Intent.ACTION_MAIN)) {
    finish();
    return; //finish()之后该活动会继续执行后面的<a href="/tag/daima/" target="_blank" class="keywords">代码</a>,你可以logCat验证,加return避免可能的exception
}

}

猜你在找的程序笔记相关文章