如何在从 AppWidgetProvider android 启动新活动之前关闭所有活动

Posted

技术标签:

【中文标题】如何在从 AppWidgetProvider android 启动新活动之前关闭所有活动【英文标题】:How to close all activity before launch new activity from AppWidgetProvider android 【发布时间】:2017-05-11 19:17:42 【问题描述】:

您好,我想在从 AppWidgetProvider 启动新活动之前关闭所有活动。我不知道要这样做。你能建议我这样做吗?

【问题讨论】:

【参考方案1】:

您可以使用finishAffinity() 方法(来自Activity、doc here)。使用正确的Intent 启动虚拟不可见/透明ActivityfinishAffinity 所有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);

【讨论】:

感谢您的回复。我会检查并通知您。 我已经解决了我的问题。非常感谢

以上是关于如何在从 AppWidgetProvider android 启动新活动之前关闭所有活动的主要内容,如果未能解决你的问题,请参考以下文章

如何发送数据?从 [AppwidgetProvider] 到 [Service]

如何将温度值(从服务)检索到 AppWidgetProvider

AppWidgetProvider 中的 super.onUpdate() 推荐?

AppWidgetProvider:在小部件放置时未调用 onAppWidgetOptionsChanged

从AppWidgetProvider到Broadcastreceiver的意图

ContentProvider 和 AppWidgetProvider 有啥关系