新的Firebase通知替换现有的未读Firebase通知

时间:2017-06-24 11:00:00

标签: java android firebase push-notification notifications

我按照此链接Firebase Notification,可以将通知发送到单个设备和多个设备。但是,新到达的通知正在替换托盘中已存在的未读通知。请告诉我一种方法来停止此操作并在托盘中显示所有未读通知。

注意:教程是关于GCM的。我对FCM进行了必要的更改。

1 个答案:

答案 0 :(得分:1)

通过生成一个随机数作为id并将其提供给notify()方法

解决了这个问题
 public void showSmallNotification(String title, String message, Intent intent) {
    PendingIntent resultPendingIntent =
            PendingIntent.getActivity(
                    mCtx,
                    ID_SMALL_NOTIFICATION,
                    intent,
                    PendingIntent.FLAG_UPDATE_CURRENT
            );


    NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(mCtx);
    Notification notification;
    notification = mBuilder.setSmallIcon(R.mipmap.ic_launcher).setTicker(title).setWhen(0)
            .setAutoCancel(true)
            .setContentIntent(resultPendingIntent)
            .setContentTitle(title)
            .setSmallIcon(R.mipmap.ic_launcher)
            .setLargeIcon(BitmapFactory.decodeResource(mCtx.getResources(), R.mipmap.ic_launcher))
            .setContentText(message)
            .build();

    notification.flags |= Notification.FLAG_AUTO_CANCEL;
    Random random = new Random();
    int m = random.nextInt(9999 - 1000) + 1000;


    NotificationManager notificationManager = (NotificationManager)     mCtx.getSystemService(Context.NOTIFICATION_SERVICE);
    notificationManager.notify(m, notification);
}