Разбор локального хранилища данных не работает - Swift 2
В настоящее время я использую последнюю версию Parse 1.14.2 и Bolts 1.8.4.Parse реализован правильно, и я использую его в течение долгого времени. Проблема, с которой я сталкиваюсь сейчас, заключается в том, что я пытаюсь использовать локальное хранилище данных Parse. У меня есть следующий код в моем AppDelegate.swift:
Parse.enableLocalDatastore()
Parse.setApplicationId("ID",
clientKey: "Client_Key")
У меня есть следующий код для создания и сохранения строки с именем firstName
в классе с именем contact
:
let contact = PFObject(className: "contact")
contact["firstName"] = "Jack"
contact.pinInBackground()
Вот код для извлечения объектов из созданного класса:
let query = PFQuery(className: "contact")
query.fromLocalDatastore()
query.getFirstObjectInBackgroundWithBlock({ (object, error) -> Void in
if error == nil {
if let contact = object {
print(contact.objectForKey("firstName"))
}
}
})
я добавил libsqlite3.dylib
в мой проект. Мое приложение не падает, когда я запускаю этот код, но оно просто выдает мне следующее сообщение, когда я пытаюсь получить объекты:
2016-08-29 11:31:38.049 App_Demo[14436:3504319] [Bolts] Warning: `BFTask` caught an exception in the continuation block.
This behavior is discouraged and will be removed in a future release.
Caught Exception: Method requires Pinning enabled.
Может ли кто-нибудь помочь мне обойти эту проблему? Я предполагаю, что проблема заключается в том, что эта версия Bolts не может закрепить объекты Parse в фоновом режиме, и мне нужно обойти эту ошибку. Буду признателен за любую помощь, так как я застрял в этом некоторое время и не могу найти слишком много информации в Интернете.
Отредактировано: я попытался понизить версию Bolts, но затем Parse понизил его в Cocoapod, и это вызывает ошибки в Xcode.
1 ответ
Это не объект Вам нужно вызвать object["UsedName"]. "UsedName" - это ключ. Надеюсь, это поможет.