Как показать более одного нажатия в разделе Android-push
[Решено]
Удар яркости ударил меня, когда я искал решение: увидев, что Cordova была обновлена, также был обновлен PushPlugin. В той версии, которую я использовал, отсеки, которые я вставил в вопрос, отсутствовали.
Я обновил Cordova и плагин... Теперь он работает правильно, используя поле 'notId' из бэкэнда!;)
Я оставляю вопрос ниже, для дальнейших читателей!
С Уважением,
Rik
Я разрабатываю мобильное приложение в Cordova/PhoneGap. Я использую PushPlugin ( https://github.com/phonegap-build/PushPlugin) для реализации механизма push-уведомлений.
Когда я отправляю более одного нажатия на мои устройства, я вижу только одно из них на устройствах Android. Устройства iOS отображают все push-уведомления на экране блокировки.
Как я могу показать более одного уведомления в Android? Я искал внутри документации плагина и нашел следующий фрагмент внутри метода onMessage:
[...]
int notId = 0;
try {
notId = Integer.parseInt(extras.getString("notId"));
}
catch(NumberFormatException e) {
Log.e(TAG, "Number format exception - Error parsing Notification ID: " + e.getMessage());
}
catch(Exception e) {
Log.e(TAG, "Number format exception - Error parsing Notification ID" + e.getMessage());
}
mNotificationManager.notify((String) appName, notId, mBuilder.build());
[...]
Я попытался установить другое поле 'notId' в серверной части, но, похоже, оно не работает...
Любая другая идея?
Спасибо за вашу помощь, Рик.
3 ответа
Используйте случайное число для notId, и это будет работать, например:
Random rnd = new Random();
int notId = rnd.nextInt(100);
вместо:
int notId = 0;
Вы должны изменить идентификатор уведомления, потому что решение проблемы заключается в том, что вам нужно использовать концепцию случайных чисел.
Random random = new Random();
int randomNumber = random.nextInt(9999 - 1000) + 1000;
notificationManager.notify(randomNumber, notification);
Use this :
notificationManager.notify((String)appName,(int) Calendar.getInstance()
.getTimeInMillis(), mBuider.build()); //What you are doing wrong is setting each notification same id so they are replacing one another and this code create new id by time , so you can see multiple notification on the screen