2014-08-28 72 views
1

当我最小化我的应用程序并在移动设备上执行任何其他操作并单击我的应用程序图标(重新启动)时,该应用程序将切换回之前的位置。但它会以新的实例打开。这意味着如果我按下“后退”按钮,新的启动应用程序已关闭,但之前打开的应用程序未关闭。单实例打开应用程序

所以我想要的是如果我的应用程序已经运行,然后最小化,并单击启动图标,我只想只有一个应用程序实例到。

+1

你拨打INTENT- NEW_TASK您的任何活动? – OnePunchMan 2014-08-28 07:00:32

回答

3

覆盖onBackPressed你应该熟悉活动launch modes

在你的情况,你可以在AndroidManifest.xml中设置:

android:launchMode="singleTop" 
的情况下,

你的活动是一个应用程序时,就到后台

或设置为可见的最后:

android:launchMode="singleTask" 
+0

感谢它为我工作 – PTech 2014-08-28 08:27:33

+0

不适合我。这必须添加到应用程序标签中吗? – 2017-07-10 15:00:10

1

您可以在活动

@Override 
public void onBackPressed() { 


     super.onBackPressed(); 

    this.moveTaskToBack(true); 
    } 
0

我建议你从系统托盘中回想起应用程序,而不是重新启动,每当你按下应用程序图标时,它会从系统托盘中创建一个新实例。所以通常的做法是从系统托盘调用应用程序而不是重新启动。

0

如果您在manifeast文件reqire您的活动组活动的只是单个实例如下...

<activity 
     android:name="com.example.activity" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait" 
     android:launchMode="singleInstance" /> 
+0

有单个Activity实例,而不是单个应用程序实例。 singleInstance模式允许每个任务只有一个Activity。在大多数情况下,这不是推荐模式。 – 2014-08-28 07:45:20

相关问题