单击桌面上的图标时,Android应用程序会启动一个新应用程序

时间:2016-01-15 06:27:19

标签: android android-task

我是这样做的:

将App启动到名为A的内部活动中 - >锁屏 - >等待很长时间以确保应用程序已被回收 - >解锁,显示未来活动A - >按主页按钮 - >点击桌面上的应用图标 - >开始一个新的应用程序 - >按下 - >回到A。

我想知道它是怎么发生的?

1 个答案:

答案 0 :(得分:0)

如果您需要解决方案,请尝试此

if (!isTaskRoot()
            && getIntent().hasCategory(Intent.CATEGORY_LAUNCHER)
            && getIntent().getAction() != null
            && getIntent().getAction().equals(Intent.ACTION_MAIN)) {

        finish();
        return;
    }

以下是http://developer.android.com/guide/topics/manifest/activity-element.html的部分说明: **

  

...也可以创建“singleTop”活动的新实例   处理新意图。但是,如果目标任务已经有了   在其堆栈顶部的现有活动实例   instance将接收新的intent(在onNewIntent()调用中);一个新的   实例未创建。在其他情况下 - 例如,如果是   “singleTop”活动的现有实例在目标任务中,   但不是在堆栈顶部,或者它位于堆栈的顶部,但是   不在目标任务中 - 将创建并推送新实例   堆栈。

**