Я пытаюсь создать несколько уведомлений. Итак, для каждого уведомления у меня есть две кнопки трансляции с разными значениями. Я также создал новый широковещательный приемник для получения значений намерений
Пример кода
int index = downloadURL.indexOf(task.getUrl()); //unique value
Intent broadcastIntentForPause = new Intent(getApplicationContext(), NotificationReceiver.class);
broadcastIntentForPause.putExtra("Id", task.getId());
PendingIntent actionIntentForPause = PendingIntent.getBroadcast(getApplicationContext(),
downloadId.get(index), broadcastIntentForPause, PendingIntent.FLAG_IMMUTABLE);
NotificationManagerCompat notificationManager = NotificationManagerCompat.from(getApplicationContext());
notificationBuilder.setContentText("connecting")
.addAction(R.mipmap.ic_launcher, "Pause", actionIntentForPause)
notificationManager.notify(downloadId.get(index), notificationBuilder.build());
И мой приемник
public class NotificationReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String eventId = intent.getStringExtra("Id");
Log.i("from receiver", " " + eventId);
}
}
- Я попытался указать уникальный идентификатор для обоих ожидающее намерение и идентификатор уведомления
Теперь моя проблема в том, что когда я нажимаю кнопку в уведомлении, я могу получить Id
из намерения. Но это неправильный идентификатор. Я имею в виду, что если в настоящее время отображается несколько уведомлений, это означает, что идентификатор заменен или получение идентификатора первого уведомления для всех уведомлений