【发布时间】:2015-07-23 13:10:46
【问题描述】:
我的 Android 应用程序收到带有一些文本消息的推送通知。如果我点击推送,它会将我重定向到带有最新推送消息(意图消息)的所需活动,但我想用相应的推送消息显示我想要的活动。 例如,如果我收到 10 个推送通知并点击第 3 个通知,我的代码会将我重定向到具有第 10 个推送通知消息的指定活动,但我想显示第 3 个意图推送通知的消息。
我知道 PendingIntent.FLAG_UPDATE_CURRENT 替换意图消息,我怎样才能用相应的消息而不是最后的消息重定向?
我尝试了以下方法:
Intent intent = new Intent(this, TestActivity2.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
| Intent.FLAG_ACTIVITY_CLEAR_TASK);
intent.putExtra("uid", uid);
PendingIntent resultPendingIntent = PendingIntent.getActivity(this, 0,
intent, PendingIntent.FLAG_UPDATE_CURRENT);
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
getApplicationContext());
Notification notification = mBuilder
.setSmallIcon(R.drawable.ic_launcher)
.setTicker(textMsg)
.setWhen(0)
.setAutoCancel(true)
.setContentTitle(textMsg)
.setStyle(
new NotificationCompat.BigTextStyle().bigText(textMsg))
.setContentIntent(resultPendingIntent).setContentText(textMsg)
.build();
NotificationManager notificationManager = (NotificationManager) getApplicationContext()
.getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify((int) System.currentTimeMillis(),
notification);
【问题讨论】:
标签: android android-intent google-cloud-messaging android-notifications