我需要在我的应用程序中集成推送通知。我看了很多教程,但任何帮助我的东西都对我有帮助,因为我需要做一些更困难的事情。事实上,当新闻将在数据库中发布时,我需要系统自动向所有用户发送推送通知。示例:这是我从数据库中得到的响应
{"news":[{"id":"36","type":"news","title":"This is test for Pune","city":"Pune","description":"Test offer for pune city","image":"http://www.saimobileapp.com/mobileappbackend/news/01.png"},{"id":"35","type":"news","title":"final test for offer","city":"Mumbai","description":"Test description","image":"http://www.saimobileapp.com/mobileappbackend/news/IMG_0421.JPG"},{"id":"31","type":"news","title":"new test","city":"Mumbai","description":"yes its a test msg","image":"http://www.saimobileapp.com/mobileappbackend/news/Chrysanthemum.jpg"},{"id":"30","type":"news","title":"This is a test news","city":"Mumbai","description":"Test description","image":"http://www.saimobileapp.com/mobileappbackend/news/1.jpg"}]}
这里我们有 4 条新闻..所以如果我发布另一条新闻,它将是 5 条,系统会发送带有该新闻标题的推送...这可能吗?如果是,我可以使用哪种服务?解析?还是 phpserver? 谢谢
最佳答案
是的,这是可能的。我正在使用它使用 node.js。您还应该需要创建 APNS 配置证书以使用此服务以及如何创建 APNS certificate 的链接。 .以下是 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 中,您可以发送标题“This is test for Pune”,当用户收到此“application:didReceiveRemoteNotification:fetchCompletionHandler:”时,您的应用委托(delegate)中的函数将被调用,您的应用将打开。
您必须在您的应用中创建一个 View 来显示通知列表。用户将选择一个特定的通知,然后您从服务器获取所有新闻数据并将其显示给用户。
关于php - 带地理定位的 Swift 自动推送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32670714/