我的应用程序的一部分目前允许用户使用UIDatePicker安排约会。他们按下一个按钮,我的后端对日期做一些工作来存储约会数据,然后我使用以下代码发送一个推送:
NSString *objectID = [NSString stringWithFormat:@"user_%lu", (unsigned long)self.salespersonObject.userID];
PFPush *push = [PFPush new];
[push setChannel:[NSString stringWithFormat:@"%@",objectID]];
NSString *message1 = [NSString stringWithFormat:@"%@ sent you an appointment request. Visit your profile in the app to confirm", self.currentUser.fullName];
NSDictionary *data = [NSDictionary dictionaryWithObjectsAndKeys:
message1, @"alert",
@"Increment", @"badge",@"default",@"sound",
nil];
[push setData: data];
[push sendPushInBackground];我想知道的是。有没有办法通过解析iOS SDK来设置推流下发的具体时间?我还想在此方法中添加一个在UIDatePicker日期前1小时发送的推送,内容类似于“提醒您与x的约会将在1小时内完成”。
提前感谢!
发布于 2015-11-20 03:45:44
来自Parse Doc:
iOS或OS X SDK当前不支持
发送计划推送通知。看看REST API、JavaScript SDK或Parse.com推流控制台。
做IMO最好的方法是使用云代码,这样你就可以创建一个触发器(afterSave,afterDelete)或者一个你可以从你的iOS应用中调用的函数。因为CloudCode使用的是Javascript SDK,所以你可以这样做:
var tomorrowDate = new Date(...);
var query = new Parse.Query(Parse.Installation);
query.equalTo('user_id', 'user_123');
Parse.Push.send({
where: query,
data: {
alert: "You previously created a reminder for the game today"
},
push_time: tomorrowDate
}, {
success: function() {
// Push was successful
},
error: function(error) {
// Handle error
}
});发布于 2015-11-20 03:52:08
您可以使用解析后台作业来调度推送通知。这是documentation的链接
发布于 2015-11-20 04:02:02
对于iPhone软件开发工具包和一个封闭的应用程序,你真的没有什么可以做的。
我建议您将推送分配给一个通道,发送通知通常是从Parse.com推送控制台、REST API或云代码完成的,您也可以通过此介质分配后台作业。
但是,如果您想坚持使用objective C,因为您没有提到任何其他语言;您可以在本地发送Local Push Notifications,但不能通过PARSE SDK。
https://stackoverflow.com/questions/33811696
复制相似问题