我正在设置包含一些数据的通知,以打开我的一项活动。如果通知尚未得到确认,我会覆盖它,因为我通常会使用相同的ID进行通知。
我看到通知值发生了变化,但是,我注意到我在putExtra调用中输入ReceiveMessage键的额外值实际上是陈旧的信息。 NOtificaitonManager.notify应该用该ID覆盖现有通知,那么我为什么要在Notification的Intent中处理陈旧信息?
Intent notificationIntent = new Intent(context, MyActivity.class);
notificationIntent.setAction(MyActivity.CustomInternalAction);
notificationIntent.putExtra(MyActivity.ReceiveMessage, rawMessageText);
notificationIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, 0);
Notification notification = new Notification.Builder(context)
//......
mNotificationManager.notify(myId, notification);
答案 0 :(得分:3)
在致电PendingIntent.FLAG_UPDATE_CURRENT
时使用getActivity()
。