如何从 PhoneGap Build 中的 PushNotification 获取键/值数据
Posted
技术标签:
【中文标题】如何从 PhoneGap Build 中的 PushNotification 获取键/值数据【英文标题】:How to get key/value data from PushNotification in PhoneGap Build 【发布时间】:2014-02-19 01:56:00 【问题描述】:我在 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
【问题讨论】:
【参考方案1】:你可以在phonegap中获取key/pairs of notification的值,如下: 可以使用以下命令检索消息文本:e.message 所有其他键/值对都可以通过以下方式检索:e.payload.key
例如,如果您想获得通知的标题(在上面),那么您将在“e.payload.title”中获得它。 获得值后,您可以根据值放置条件语句以转到不同的页面/div。
【讨论】:
以上是关于如何从 PhoneGap Build 中的 PushNotification 获取键/值数据的主要内容,如果未能解决你的问题,请参考以下文章
phonegap pushNotifications 插件是不是适用于 Cordova 构建?
Cordova 与 PhoneGap Build 中的 config.xml 位置