PendingIntent的重复问题
今天做Android推送通知模块,发现在Service中使用PendingIntent打开Activity时,虽然每次通知都会改变putExtra中的值,但是Activity里getStringExtra时,值没有任何变化,很奇怪。
加了一些Flag
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);intent.setFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);?
也没有起作用
?
查了一些资料,发现如果你之前已经创建过一个PendingIntent,而之后创建的PendingIntent和之前的基本相似,那么就必须加上如下的声明PendingIntent.FLAG_UPDATE_CURRENT,否则extras不会传递到目标Activity
?
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);?
原文如下:
http://stackoverflow.com/questions/4340431/how-can-i-correctly-pass-unique-extras-to-a-pending-intent
?