Подписка на частную базу данных CloudKit с предикатом

Моя программа, использующая CloudKit, создала тип записи с полем с именем "to_uuid", а также создала подписку с предикатом " to_uuid = %@", UUID. Есть код:

let predicate = NSPredicate(format: "to_uuid = %@",  uuidStr)  

let subscription = CKQuerySubscription(recordType: typeName,  
                                       predicate: predicate,  
                                       options: .firesOnRecordCreation)  

let notificationInfo = CKNotificationInfo()  

notificationInfo.alertBody = "Body"  
notificationInfo.shouldBadge = true  

subscription.notificationInfo = notificationInfo  

let privateDatabase = CKContainer.default().privateCloudDatabase  
privateDatabase.save(subscription,  
                      completionHandler: ({returnRecord, error in  
                        if let err = error {  
                            print("subscription failed %@",  
                                  err.localizedDescription)  
                        } else {  
                            print("subscription success %@", returnRecord!)  
                        }  
                      }))  

но приложение по-прежнему получает все созданные записи независимо от значения to_uuid. Я пробовал много методов, но это все еще не работает

0 ответов

Другие вопросы по тегам