如何在Android推送部分显示多个推送

时间:2014-10-07 10:16:54

标签: android cordova push-notification google-cloud-messaging phonegap-pushplugin

[解决]

在我寻找解决方案的过程中,亮点一击:通过看到Cordova已经更新,PushPlugin也得到了更新。 在我使用的版本中,我粘贴在问题中的剪辑不存在。

我更新了Cordova和插件......现在通过使用' notId'来自后端的领域! ;)

我留下以下问题,供更多读者使用!

此致

里克多维


我正在开发Cordova / PhoneGap中的移动应用程序。我正在使用PushPlugin(https://github.com/phonegap-build/PushPlugin)来实现推送通知机制。

当我向设备发送多个推送时,我只能在Android设备上看到其中一个推送。 iOS设备会在锁定屏幕中显示所有推送通知。

如何在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 个答案:

答案 0 :(得分:0)

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 

答案 1 :(得分:0)

对notId使用随机数,这将起作用,如:

   Random rnd = new Random();  
   int notId = rnd.nextInt(100);  

而不是:

    int notId = 0;

答案 2 :(得分:0)

你必须知道notfication id,因为它一直没有解决方案是你必须使用ramdom数字概念

Random random = new Random();
int randomNumber = random.nextInt(9999 - 1000) + 1000;
notificationManager.notify(randomNumber, notification);