【发布时间】:2017-05-11 19:17:42
【问题描述】:
您好,我想在从 AppWidgetProvider 启动新活动之前关闭所有活动。我不知道要这样做。你能建议我这样做吗?
【问题讨论】:
标签: android android-activity android-widget back-stack
您好,我想在从 AppWidgetProvider 启动新活动之前关闭所有活动。我不知道要这样做。你能建议我这样做吗?
【问题讨论】:
标签: android android-activity android-widget back-stack
您可以使用finishAffinity() 方法(来自Activity、doc here)。使用正确的Intent 启动虚拟不可见/透明Activity、finishAffinity 所有Activityies 和startActivity
还有一些Intents 的标志应该清除你的Activity backstack,但这取决于Manifest 中声明的launchMode。你可以检查这些
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
或
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | FLAG_ACTIVITY_SINGLE_TOP);
【讨论】: