待定意图强制创建新活动

时间:2015-04-20 12:31:18

标签: android android-intent

不是Pending intent always make new activity的副本,因为没有解决方案。

这是我的PendingIntent:

Intent intent = new Intent(context, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);       
return PendingIntent.getActivity(context, REQUEST_CODE_PUSH_MESSAGE_TYPE, intent, PendingIntent.FLAG_CANCEL_CURRENT);

如果我关闭应用程序(例如后退按钮)并在通知中使用此PendingIntent,它将创建一个新活动。

但是,如果我暂停应用程序(例如主页按钮)并单击相同的通知,则将恢复活动(和包含的片段)。

每次使用此PendingIntent时,如何创建新活动(及其片段)?

2 个答案:

答案 0 :(得分:1)

使用Intent.FLAG_ACTIVITY_NEW_TASK

来自文档

  

如果设置,此活动将成为此任务的新任务的开始   历史堆栈。

您可以使用正在使用的其他标记添加or

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

答案 1 :(得分:0)

Intent.FLAG_ACTIVITY_SINGLE_TOP移除IntentIntent.FLAG_ACTIVITY_SINGLE_TOP的使用告诉Android重用现有的Activity实例。