PhoneGap PushPlugin с номером значка и функцией группировки

Я использовал pushPlugin для получения push-уведомлений в моем приложении Android PhoneGap. Все работает правильно. Проблема только в том, что когда в панели уведомлений присутствует несколько сообщений, последнее сообщение переопределяет предыдущее сообщение. Я хотел бы сгруппировать все сообщения в приложении, как это делает whatsApp.

Я попытался добавить параметр notId и установить его в случайное число из моего кода на стороне сервера. При этом на самом деле отображаются несколько уведомлений, но не группируются тогда.

Я также хотел бы знать, как добавить номер значка в мое приложение. В основном это число, которое сообщит пользователю, что пришло так много уведомлений. Как и в WhatsApp (например, 2 полученных сообщения). Я добавил этот плагин, чтобы справиться с этим, но я не уверен, нужно ли это делать в phonegap или мне придется изменить код Java (плагин) для достижения этой цели.

Я знаю, что эта тема уже обсуждалась здесь, но ответа на нее нет. поэтому я поднял новый вопрос. Любая помощь будет оценена.

1 ответ

Я действительно думаю (хотя я совершенно не уверен), что WhatsApp на самом деле не показывает отдельные уведомления, вместо этого он объединяет не прочитанные сообщения на сервере перед отправкой только одного нового уведомления, которое перезаписывает текущее, как вы сказали. Например, если у вас изначально есть одно не прочитанное сообщение, вызывающее это уведомление

WhatsApp
Hey dude!

а затем вы получите другое сообщение, отправленное уведомление

WhatsApp
2 new messages from 2 contacts

или если отправитель тот же контакт

WhatsApp
Hey dude!\n
What is up?

Вы могли бы использовать pushNotification.setApplicationIconBadgeNumber(successHandler, errorHandler, event.badge);если вам нужна только поддержка iOS, но поскольку она не поддерживает Android для этой функции, вам нужно использовать что-то еще, и этот плагин, который вы упомянули, выглядит хорошо для него. Похоже, что это довольно легко использовать, как это (после установки)

cordova.plugins.notification.badge.set(3);
Другие вопросы по тегам