2017-02-09 11 views
0

Я завязывания понять документы Kinvey, написав простое приложение, чтобы сохранить объект «книги» в сборнике «Книга»Kinvey DataStore не сохраняет

К сожалению, я получаю следующее сообщение об ошибке

dyld_sim`dyld_fatal_error: 

Мой код выглядит следующим образом

AppDelegate

import UIKit 
import Kinvey 
import SVProgressHUD 

@UIApplicationMain 
class AppDelegate: UIResponder, UIApplicationDelegate { 

var window: UIWindow? 
lazy var fileStore: FileStore = { 
    return FileStore.getInstance() 
}() 


func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 
    // Override point for customization after application launch. 

    Kinvey.sharedClient.initialize(
    appKey: "kid_rJngK8I_x", 
    appSecret: "6439a2ee96ef412083f10108666f6004" 
    ) 


    if let _ = Kinvey.sharedClient.activeUser { 
     //do nothing 
    } else { 
     SVProgressHUD.show() 

     User.exists(username: "test") { exists, error in 
      if exists { 
       User.login(username: "test", password: "test") { user, error in 
        SVProgressHUD.dismiss() 
        if let _ = user { 
         //do nothing 
        } else { 
         //do something! 
        } 
       } 
      } else { 
       User.signup(username: "test", password: "test") { user, error in 
        SVProgressHUD.dismiss() 
        if let _ = user { 
         //do nothing 
        } else { 
         //do something! 
        } 
       } 
      } 
     } 
    } 

    return true 

} 

Book.swift

import Foundation 
import Kinvey 

class Book: Entity { 
dynamic var title: String? 
dynamic var authorName: String? 

override class func collectionName() -> String { 
    //return the name of the backend collection corresponding to this entity 
    return "Book" 
} 
//Map properties in your backend collection to the members of this entity 
override func propertyMapping(_ map: Map) { 
    //This maps the "_id", "_kmd" and "_acl" properties 
    super.propertyMapping(map) 
    //Each property in your entity should be mapped using the following scheme: 
    //<member variable> <- ("<backend property>", map["<backend property>"]) 
    title <- ("title", map["title"]) 
    authorName <- ("authorName", map["author"]) 
} 
} 

ViewController

import UIKit 
import Kinvey 

class ViewController: UIViewController { 

override func viewDidLoad() { 
    super.viewDidLoad() 

    let dataStore = DataStore<Book>.collection() 

    let book = Book() 

    book.title = "Steal This Book" 
    book.authorName = "Abbey Hoffman" 

    print("Abbey Hoffman") 



     dataStore.save(book) { book, error in 
      if let book = book { 
       //succeed 
       print("Book: \(book)") 
      } else { 
       //fail 
      }// close else 
     } //closesave block 



    } 


override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 


} 

Когда я закомментируйте следующие из ViewController.swift мой код работает без проблем

dataStore.save(book) { book, error in 
      if let book = book { 
       //succeed 
       print("Book: \(book)") 
      } else { 
       //fail 
      }// close else 
     } //closesave block 

Новый пользователь генерируется на скопированный, но ничего не добавляется сборник книг

Ниже показан снимок экрана моего окна отладчика enter image description here

ответ

0

Bryan,

Смотрите, если она может быть решена с помощью чистого & сборки (или, возможно, перезапуском Xcode). Вы также можете рассмотреть возможность удаления соответствующих папок из ~/Library/Developer/Xcode/DerivedData.

Предоставьте мне снимок экрана об ошибке, которую вы получаете. Если бы вы могли предоставить мне образец проекта, где вы видите ошибку, это было бы здорово.

Также, какую версию SDK вы используете?

Спасибо, Pranav Поддержка Kinvey

+0

Очистить и построить и перезагрузка XCode не работает, к сожалению. Я редактировал свое оригинальное сообщение, чтобы включить скриншот моего окна отладчика. –

+0

Я использую новейший SDK, совместимый с iOS 10, swift 3, xcode 8 –

+0

https://github.com/bryanjcampbell1/grabKinevyData –