Я прочитал много сообщений по той же теме и попробовал все данные решения, не получая результат, который я хочу. Программа должна запустить намерение с отдельно оплачиваемых предметов из уведомления:
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);
Проблема состоит в том, что, когда новое уведомление показывают, отдельно оплачиваемые предметы, добавленные к намерению, совпадают с в первом уведомлении. У меня есть triend с флагами differnt и в намерении и в незаконченном намерении без результата. Что я понимаю превратно? Если я просто запускаю то же действие (и те же отдельно оплачиваемые предметы) с кнопкой, все работает, как оно, как предполагается.
Я не знаю, почему у меня были такие проблемы с тем, чтобы заставить это работать. Комбинация флагов, которую я использовал для правильной работы, была следующей:
PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent,
PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_ONE_SHOT);
Я также удалил все флаги, используемые при создании notificationIntent
.