Android:从主屏幕小部件启动应用程序活动的新实例

时间:2012-11-09 22:52:56

标签: android

我在主屏幕上有一个app小部件,其中包含一个启动基本设置Activity的按钮。

当用户按下“返回”按钮时,如果主应用程序在其堆栈中有一些活动,则后退会将您带到应用程序中最近查看的活动,而不是返回主页。为了我的意图,我尝试了以下标志:

settingsIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

settingsIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_TASK_ON_HOME);

settingsIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

但没有运气。我可以使用任何标志或标志组合来执行此操作吗?感谢。

2 个答案:

答案 0 :(得分:1)

您需要执行以下操作:

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

您当前正在使用setFlags,当您需要这两个标志才能正常工作时,它会覆盖您之前设置的标记。

您可以在http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_CLEAR_TOP

处阅读此内容

答案 1 :(得分:1)

尝试下一步

  

settingsIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);   settingsIntent.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);

此标志在新任务中运行活动,并且在退出后不将其添加到历史记录中。 因此,您的设置活动不会与主应用交叉