2015-11-19 28 views
1

我的应用程序的一部分目前允许使用的UIDatePicker用户安排约会发送推送通知。他们按一个按钮,我的后端确实与日期一些工作来存储约会数据,然后我用下面的代码发送推:解析iOS的 - 在特定的时间

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以设置推送的特定时间?我想也在这种方法中添加一个推送发送1小时之前的UIDatePicker日期说,像“提醒你的约会x在1小时内”

在此先感谢!

回答

1

从parse文件:

计划发送推送通知,目前不被 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 
    } 
}); 

Parse Push notification scheduling Guide

0

您可以使用解析后台作业调度推送通知。 这里是documentation的链接

0

对于iPhone SDK和一个封闭的应用程序,你可以做的确不是很多。

我建议你指定推的通道,发送通知往往是从Parse.com推控制台完成,REST API或从云代码,您也可以通过这个平台指定后台作业。

但是,如果你要坚持客观C作为你不提任何其他语言;您可以本地发送Local Push Notifications,但不能通过PARSE SDK发送。