Я разрабатываю приложение для Android, и я также получаю уведомление GCM push, а идентификатор уведомления для каждого из них различен. Проблема заключается в том, что у меня есть n push-уведомлений и приложение не находится в фоновом режиме. Когда я нажимаю на уведомление в первый раз, он откроет действие. Затем я снова очистил экземпляр приложения от фона и нажал на другое push-уведомление, что он не откроет приложение.Android Push Notification Не открывать активность, если n количество уведомлений в панели уведомлений
Intent intent = new Intent(this, MainActivity.class);
TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
stackBuilder.addParentStack(MainActivity.class);
stackBuilder.addNextIntent(intent);
long[] vibrate = {0, 100, 200, 300};
Uri notification = RingtoneManager
.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
PendingIntent contentIntent = stackBuilder.getPendingIntent(0,
PendingIntent.FLAG_UPDATE_CURRENT
| PendingIntent.FLAG_ONE_SHOT);
Bitmap largIcon = BitmapFactory.decodeResource(this.getResources(),
R.mipmap.ic_launcher);
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
this).setSmallIcon(R.mipmap.small_icon_notification)
.setContentTitle(getResources().getString(R.string.app_name))
.setLargeIcon(largIcon)
.setSound(notification)
.setStyle(new NotificationCompat.BigTextStyle().bigText(msg))
.setContentText(msg). setSound(notification)
.setStyle((new NotificationCompat.BigTextStyle()).bigText(msg)) .setAutoCancel(true);
mBuilder.setVibrate(vibrate);
mBuilder.setContentIntent(contentIntent);
mNotificationManager.notify((int) System.currentTimeMillis(), mBuilder.build());
Я не думаю, что вы должны отливать System.currentTimeMillis() в int. Вместо этого используйте генератор случайных чисел. –
Я изменил идентификатор уведомления, как вы сказали. Но результат тот же – Divya
Можете ли вы обновить код с вашими изменениями? –