我需要在我的应用程序中集成推送通知。我看了很多教程,但任何帮助我,因为我需要做一些更困难的事情。实际上,当新闻在数据库中发布时,我需要系统向所有用户自动发送推送通知。这是我从数据库得到的响应。
{“新闻”:{“id”:“36”,“类型”:“新闻”,“标题”:“这是对浦那的测试”,“城市”:“浦那”,“描述”:“浦那城的测试报价”,"image":"http://www.saimobileapp.com/mobileappbackend/news/01.png"},{"id":"35",“类型”:“新闻”,“标题”:“最终报价”,“城市”:“孟买”,“描述”:“测试描述”,"image":"http://www.saimobileapp.com/mobileappbackend/news/IMG_0421.JPG"},{"id":"31",“类型”:“新闻”,“标题”:“新测试”,“城市”:“孟买”,“描述”:“是的测试信息”,"image":"http://www.saimobileapp.com/mobileappbackend/news/Chrysanthemum.jpg"},{"id":"30",“类型”:“新闻”,“标题”:“这是测试新闻”,“城市”:“孟买”,“描述”:“测试描述”,"image":"http://www.saimobileapp.com/mobileappbackend/news/1.jpg"}}
这里我们有4 news..So,如果我发布另一个新闻,它将是5和系统发送一个推与标题的新闻.有可能吗?如果是的话,我可以用吗?解析?还是一台phpserver?谢谢
发布于 2015-09-19 17:16:04
是的这是可能的。我使用的是node.js。您还需要创建使用此服务的APNS配置证书,以及如何创建APNS证书的链接。以下是APNS的示例代码:
var apn = require("apn")
var apnError = function(err){
console.log("APN Error:", err);
}
var options = {
"cert": "cert.pem",
"key": "key.pem",
"passphrase": null,
"gateway": "gateway.sandbox.push.apple.com",
"port": 2195,
"enhanced": true,
"cacheLength": 5
};
options.errorCallback = apnError;
var feedBackOptions = {
"batchFeedback": true,
"interval": 300
};
var apnConnection, feedback;
module.exports = {
init : function(){
apnConnection = new apn.Connection(options);
feedback = new apn.Feedback(feedBackOptions);
feedback.on("feedback", function(devices) {
devices.forEach(function(item) {
//TODO Do something with item.device and item.time;
});
});
},
send : function (params){
var myDevice, note;
myDevice = new apn.Device(params.token);
note = new apn.Notification();
note.expiry = Math.floor(Date.now() / 1000) + 3600; // Expires 1 hour from now.
note.badge = 1;
note.sound = "ping.aiff";
note.alert = params.message;
note.payload = {'messageFrom': params.from};
if(apnConnection) {
apnConnection.pushNotification(note, myDevice);
}
}
}您可以在线找到许多用于node.js APNS服务器的示例代码。
在APNS中,您可以发送标题为“这是用于Pune的测试”,当用户收到此"application:didReceiveRemoteNotification:fetchCompletionHandler:“函数时,您的应用程序委托将被调用,您的应用程序将打开。
您必须在应用程序中创建一个视图来显示通知列表。用户将选择一个特定的通知,然后从服务器获取所有新闻数据,并将其显示给用户。
https://stackoverflow.com/questions/32670714
复制相似问题