我在 CloudKit 中保存和查询记录有很多初步成功。现在我被困在一些简单的事情上。对于每个用户,我想保存他的 CloudKit 用户 ID,以便他们可以查看他们保存的记录列表。
我认为 completionHandler 提供了保存的记录,并填充了有用的元信息。这是我的 completionHandler 函数的开始:
func recordSaved(record: CKRecord?, error: NSError?) {
if (record != nil) {
var myUserRecordID:CKRecordID = record!.creatorUserRecordID
let UserRecordIDToStore = NSKeyedArchiver.archivedDataWithRootObject(myUserRecordID)
plist.setValue(UserRecordIDToStore, forKey: "lastCKRecordID")
}
当此保存操作完成时调用它:
publicDatabase.saveRecord(newRecord, completionHandler: recordSaved)
但是,在 if 之后的第一行(以“var ...”开头)我收到以下错误消息:“致命错误:在展开可选值时意外发现 nil”。我不明白为什么这是零。
请帮助:1.解释我做错了什么2.保存用户ID以供将来查询使用的任何提示。
谢谢!