我想从(使用的PendingIntent)通报按钮启动活性的 。 当我点击该通知按钮和一个是历史堆栈的顶部,它只是无法正常运行:
它应该做的:
- 活动A必须复制在historystack,这种方式:
- 当活动A在历史堆栈的顶部
之前:
[A,...老活动...]
后:
[A,A,...老活动...] - 当活动A 是不是对历史堆栈的顶部(默认行为)
之前:
[B,......老活动...]
后:
[A,B,......老活动...]
- 当活动A在历史堆栈的顶部
怎么了:
-
onCreate
被调用,但getIntent().getExtras()
为null
。 - 活动A被替换,而不是重新创建(我想重复)。
我已经尝试了很多东西: Intent.FLAG*
和PendingIntent.FLAG*
还可以,但没有成功。
编辑1:我想这些常量:
-
Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_MULTIPLE_TASK
-
Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP
Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP
(但我不希望清除顶部)
码(部分):
Intent intentCancel = new Intent(getApplicationContext(), ChallengeProposalActivity.class);
//intent.setAction(String.valueOf(System.currentTimeMillis()));
//intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_MULTIPLE_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
intent.putExtra(ChallengeProposal.NAME, proposal);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intentCancel, 0);
代码(满): http://pastebin.com/vNuEkBvi
我该怎么办?
相关的问题:
在意图添加额外时的PendingIntent不工作
复制MainActivity当从通知设定