Android Pending意图从通知开始不会替换最后一个

Emi*_*mil 9 notifications android android-pendingintent

我已经阅读了很多关于同一主题的帖子,并尝试了所有给定的解决方案而没有得到我想要的结果.程序应该从通知中添加额外的意图:

NotificationManager mNotificationManager = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);  

Intent notificationIntent = new Intent(context, myActivity.class);
    notificationIntent.putExtra("someData", data);

PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);

notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);

mNotificationManager.notify(ID, notification);
Run Code Online (Sandbox Code Playgroud)

问题是,当显示新通知时,添加到意图的附加内容与第一个通知中的附加内容相同.我在意图和未决意图中都有不同的标志,没有结果.我错了什么?如果我只是用一个按钮启动相同的活动(和相同的附加功能),一切都按预期工作.

Emi*_*mil 10

我不知道为什么我有这样的问题让这个工作.我用来使其正常工作的标志组合是:

PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, 
                PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_ONE_SHOT);
Run Code Online (Sandbox Code Playgroud)

我还删除了创建时使用的所有标志notificationIntent.


Vah*_*aha 5

尝试在AndroidManifest.xml文件中添加属性:

<activity ... android:launchMode="singleTop"/>
Run Code Online (Sandbox Code Playgroud)