我正在开发 Android 应用程序。当我的应用程序运行并按下手机上的最近应用程序按钮时,将调用Activity的 onPause()方法。在 onPause 内,我打电话给完成()。所以活动被破坏了。
但它在最近的应用程序列表中仍然可见。
当我从 onPause()中销毁我的活动时,如何确保它未列在最近的应用程序列表中。
答案 0 :(得分:6)
尝试
<activity android:name=".MainActivity"
android:excludeFromRecents="true" ...>
AndroidManifest.xml活动声明中的。
是否应排除此活动启动的任务 来自最近使用的应用程序列表(&#34;最近的应用程序&#34;)。那是, 当此活动是新任务的根活动时,此属性 确定任务是否不应出现在最近的列表中 应用。设置&#34; true&#34;如果任务应从列表中排除;组 &#34;假&#34;如果它应该包括在内。默认值为&#34; false&#34;。
如果要在启动时为Activity创建特殊属性,则为Intent提供特殊标志。在这种情况下,FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS。
浏览link。
答案 1 :(得分:0)
原因可能是因为只有您的活动被销毁而不是Application实例。 Android等待可能是用户再次打开应用程序。
要完全终止应用程序,您可以使用
对于上述API 16 this.finishAffinity()
。
它将完成当前活动以及其下的所有其他活动。正如医生所说
完成此活动以及紧接其下的所有活动 具有相同亲和力的当前任务
答案 2 :(得分:0)
使用finishAndRemoveTask()而不是finish()或finishAffinity()
答案 3 :(得分:0)
使用
finish();
当您转到下一个活动时,最近的活动就结束了