我正在尝试从通知按钮启动活动 A (使用PendingIntent)。当我点击此通知按钮并且 A 位于历史堆栈之上时,它的行为不正确:
它应该做什么:
会发生什么:
onCreate
已被调用,但getIntent().getExtras()
为null
。我尝试了很多事情: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 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
我该怎么办?
相关问题:
答案 0 :(得分:1)
您已创建intentCancel
个对象,但尝试在intent
对象中添加额外内容:
Intent intentCancel = new Intent...
intent.putExtra...