2013-05-07 62 views
3

我在node-gcm是新,, 我試圖將數據發送到Android上使用node-gcm ...我不知道我開始建project..i下面這個教程https://github.com/ToothlessGear/node-gcm但仍是一頭霧水......無法接收來自node-gcm的數據?

這裏我的代碼:

var gcm = require('node-gcm'); 

// create a message with default values 
var message = new gcm.Message(); 

// or with object values 
var message = new gcm.Message({ 
    collapseKey: 'demo', 
    delayWhileIdle: true, 
    timeToLive: 3, 
    data: { 
     key1: 'message1' 
    } 
}); 

var sender = new gcm.Sender('myApi'); 
var registrationIds = []; 

// Optional 
// add new key-value in data object 
message.addDataWithKeyValue('key1','message1'); 

// or add a data object 
message.addDataWithObject({ 
    key1: 'message1', 
}); 

// or with backwards compability of previous versions 
message.addData('key1','testdarinodegcm'); 


message.collapseKey = 'demo'; 
message.delayWhileIdle = true; 
message.timeToLive = 3; 
// END Optional 

// At least one required 
registrationIds.push('myToken'); 
//registrationIds.push('regId2'); 

/** 
* Parameters: message-literal, registrationIds-array, No. of retries, callback-function 
*/ 
sender.send(message, registrationIds, 4, function (err, result) { 
    console.log(result); 
}); 

我沒有得到任何控制檯發現錯誤...而不是成功的,但我不能接受,在Android設備數據...這裏從控制檯消息...

{"multicast_id":7521418564872032002,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:1367890688015497%f11e78b0f9fd7ecd"}]} 

爲什麼我無法在Android設備上接收來自node-gcm的數據?也許我的代碼不完整?

回答

7

試試這個..

var sender = new gcm.Sender(googleApiKey); 
var message = new gcm.Message(); 
message.addData('key1','testdarinodegcm'); 
message.delay_while_idle = 1; 
var registrationIds = []; 
registrationIds.push('APA91bHCzBP6wEfExCZlSXgf0wuOC6QEWJ-7MVFl3hgaW3Jv8FslsofGJ-  qgdliyS8zjwy_W7zPaKsEZx6kbeuWdoAAexawKl1Qd6GEGV_v844n1LMRaTsWeiwI9iaLGKKq_R3scY_wuRG8uG2SZ5X9q0J67Ko3gcw'); 
sender.send(message, registrationIds, 4, function (err, result) { 
console.log(result); 
}); 

本教程介紹了所有該庫爲您提供的可用選項。這並不意味着你需要立即根據具體情況立即需要所有的人。試試這個代碼,它會發送簡單的消息到您的設備。

+0

它工作..感謝... – ltvie 2013-05-08 01:07:56

+0

它不會發送通知到我的設備,因爲沒有有效載荷 – 2015-11-19 17:12:33

+0

這是足夠多的代碼足夠發送從節點gcm推?如果是這樣,registrationId是否實際引用了deviceToken?我收到成功消息,但沒有收到推送消息。 – 2017-03-16 10:40:26