我正在使用CloudKit处理推送通知。通常,我使用选项.firesOnRecordCreation
来确定何时发送推送通知。例如。 -
let subscription = CKQuerySubscription(recordType: "SomeRecord", predicate: NSPredicate(format: "TRUEPREDICATE", argumentArray: nil), options: .firesOnRecordCreation)
CKContainer.default().publicCloudDatabase.save(subscription) { (result, error) -> Void in
//check for result and error
}
这是CKQuerySubscriptionOptions
。但是,我想在几天后发送推送通知。我怎样才能做到这一点?谢谢!
答案 0 :(得分:1)
目前无法设置CloudKit推送通知的延迟时间。 CloudKit在满足订阅的更改发生后的某个时间点发送通知。没有应用程序开发人员控制此过程的时间,并且时间可能会受到多个变量的影响。
如果您想在以后向用户显示通知,可以通过为该日期安排本地通知(在您收到CloudKit通知之后)来解决此问题。
或者,您可以在应用中记录更改的记录/通知信息,并在应用运行时根据需要进行处理。
或者,如果您愿意运行自己的服务器和/或发送自己的推送通知,那么天空就是极限。