用node-gcm发送有效载荷通知到android设备

我正在使用node-gcm通过GG GCM向Android设备发送通知。 问题是,当我发送2个或更多消息时,它们彼此重叠(旧消息消失,新消息replace它)。 而当我从互联网上断开我的设备,然后发送2条消息,我连接到互联网,并且只有一个通知与我发送的最后一条消息。 这是发送消息的代码,我已经删除了GG在他们的指南中说的collapse_key:

function sendNoti(content){ // with object values var message = new gcm.Message({ //collapseKey: 'cms', //delayWhileIdle: true, //timeToLive: 10, data: { news: content } }); var sender = new gcm.Sender('MY KEY'); var registrationIds = []; db.noti.find({}, function (err, getted) { getted.forEach(function (each) { registrationIds.push(each.regId); }); /** * Params: message-literal, registrationIds-array, No. of retries, callback-function **/ sender.send(message, registrationIds, 10, function (err, result) { console.log(result); }); }) } 

请帮我解决这个问题。 非常感谢你!

您的服务器代码与您的问题无关。 您的客户端代码可能会显示带有固定标识符的通知。 这会导致每个新的通知覆盖前一个。

您必须从以下位置更改通知方法调用:

 notificationManager.notify (CONSTANT_NOTIFICATION_ID, notification); 

至 :

 notificationManager.notify (unique_identifier, notification);