我的问题与此类似:Register event not getting called on ios #386
我的Android设备上的一切正常,但在ios上似乎会跳过注册部分(我没有错误或其他):
代码:
var push = PushNotification.init({
android: {
senderID: "XXXXXX"
},
ios: {
senderID: "XXXXXX",
alert: "true",
badge: "true",
sound: "true",
gcmSandbox: "true"
},
windows: {}
});
push.on('registration', function(data) {
console.log(data.registrationId);
});
push.on('notification', function(data) {
console.log(data.message)
// data.title,
// data.count,
// data.sound,
// data.image,
// data.additionalData
});
push.on('error', function(e) {
// e.message
});
我正在使用的一些信息:
修改
我也使用这个简单的notify.js将我的通知发送到不同的设备(适用于android):
var gcm = require('node-gcm');
var message = new gcm.Message();
var registrationIds = [];
// Value the payload data to send...
message.addData('message',"Test");
message.addData('title','Hello world' );
message.addData('notId','2');
//message.addData('soundname','beep.wav');
message.collapseKey = 'demo';
//message.delayWhileIdle = true; //Default is false
//message.timeToLive = 1000;// Duration in seconds to hold in GCM and retry before timing out. Default 4 weeks (2,419,200 seconds) if not specified.
// Set up the sender with you API key
//iOS
var sender = new gcm.Sender('API Key iOS');
//Android
//var sender = new gcm.Sender('API Key android');
// Add the registration tokens of the devices you want to send to
//ios:
registrationIds.push('token ios');
//android
//registrationIds.push('token android');
// Send the message
// ... trying only once
sender.sendNoRetry(message,registrationIds, function(err, response) {
if(err) console.error(err);
else console.log(response);
});
// ... or retrying
sender.send(message, registrationIds, function (err, response) {
if(err) console.error(err);
else console.log(response);
});
// ... or retrying a specific number of times (10)
sender.send(message, registrationIds, 10, function (err, response) {
if(err) console.error(err);
else console.log(response);
});
EDIT2
我终于收到此错误消息:
{"multicast_id":xxxxxxxxxxxxxxxxx,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"NotRegistered"}]}
答案 0 :(得分:0)
我有同样的问题。我通过在xcode功能中启用推送通知来修复它。 确保您拥有最新版本。