我在PhoneGap Build中使用Push插件。我能够发送以及接收推送通知到我的设备。我正在使用node-gcm库向注册的设备发送通知+附加数据(特别是要加载的页面)。这是我的node.js服务器上的代码:
var gcm = require('node-gcm');
var message = new gcm.Message();
//API Server Key
var sender = new gcm.Sender('GCM API SERVER/BROWSER KEY');
var registrationIds = [];
// Value the payload data to send...
message.addData('message','Hello from Portland, OR!');
message.addData('title','My Push Notification');
message.addData('msgcnt','3');
message.addData('soundname','beep.wav');
message.addDataWithKeyValue('pageid','1234566788'); //THIS IS THE ADDITIONAL DATA I'D
// ... ID LIKE TO SEND TO MY PHONEGAP BUILD APP AND INTERPRET
message.timeToLive = 3;// Duration in seconds to hold and retry to deliver the message in GCM before timing out. Default 4 weeks if not specified
// At least one reg id required
registrationIds.push('REGISTRATION ID');
/**
* Parameters: message-literal, registrationIds-array, No. of retries, callback-function
*/
sender.send(message, registrationIds, 4, function (result) {
console.log("hello" + result);
});
现在我相信我已经发送了额外的页面数据,我想知道如何从我的PhoneGap构建应用程序中获取通知本身的数据。
我还使用jquery mobile来管理不同的html页面(这基本上使每个页面成为一个html文档中的单独div),并且可以使用有关如何加载通知页面的反馈,并考虑到这一点。
非常感谢任何帮助,非常感谢!
- 24x7
答案 0 :(得分:0)
您可以在phonegap中获取密钥/通知对的值,如下所示: 可以使用以下方法检索消息文本: e.message 可以使用以下方法检索所有其他键/值对: e.payload.key
例如,如果您想获得通知的标题(在上面),那么您将在“e.payload.title”中获得它。 获取值后,您可以根据值来放置条件状态网以转到不同的页面/ div。