使用 iCloud Key-Value 存储写 App 崩溃
App crash using iCloud Key-Value storage writing
每次我尝试使用 iCloud 键值存储为键设置值时,我的应用程序都会崩溃...
我收到这个错误:
Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<NSUbiquitousKeyValueStore 0x13fd5b8a0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key ladies.'
*** First throw call stack:
(0x1842f0f48 0x19979bf80 0x1842f0c08 0x18516c014 0x1000e5380 0x1000e9914 0x1000f0430 0x1000f046c 0x1000f04a0 0x1000f04e4 0x1898bf240 0x1898bed3c 0x1898bebc4 0x189085c2c 0x101429c68 0x10142f710 0x1842a81f8 0x1842a6060 0x1841d4ca0 0x18f758088 0x1898ecffc 0x1000f4564 0x199fde8b8)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)
我定义我的密钥库:
var iCloudStore = NSUbiquitousKeyValueStore.defaultStore()
像这样设置我的值:
iCloudStore.setValue(experience, forKey: "experience")
为什么这不起作用?我是否必须定义该键才能工作?我真的不明白我得到的错误...
setValue:forKey:
不是 NSUbiquitousKeyValueStore.defaultStore()
上用于将数据保存到 iCloud 键值存储的方法。相反,它是来自 NSKeyValueCoding
协议的方法,用于使用 NSValue
和 NSNumber
类型的更通用的键值编码。您收到的错误是指您试图访问 iCloudStore
对象本身而不是 iCloud 键值存储中的“体验”键。
NSUbiquitousKeyValueStore.defaultStore()
上可用的保存键值对的方法有:
setArray:forKey:
setBool:forKey:
setData:forKey:
setDictionary:forKey:
setDouble:forKey:
setLongLong:forKey:
setObject:forKey:
setString:forKey:
选择最适合您类型的方法。
每次我尝试使用 iCloud 键值存储为键设置值时,我的应用程序都会崩溃...
我收到这个错误:
Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<NSUbiquitousKeyValueStore 0x13fd5b8a0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key ladies.'
*** First throw call stack:
(0x1842f0f48 0x19979bf80 0x1842f0c08 0x18516c014 0x1000e5380 0x1000e9914 0x1000f0430 0x1000f046c 0x1000f04a0 0x1000f04e4 0x1898bf240 0x1898bed3c 0x1898bebc4 0x189085c2c 0x101429c68 0x10142f710 0x1842a81f8 0x1842a6060 0x1841d4ca0 0x18f758088 0x1898ecffc 0x1000f4564 0x199fde8b8)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)
我定义我的密钥库:
var iCloudStore = NSUbiquitousKeyValueStore.defaultStore()
像这样设置我的值:
iCloudStore.setValue(experience, forKey: "experience")
为什么这不起作用?我是否必须定义该键才能工作?我真的不明白我得到的错误...
setValue:forKey:
不是 NSUbiquitousKeyValueStore.defaultStore()
上用于将数据保存到 iCloud 键值存储的方法。相反,它是来自 NSKeyValueCoding
协议的方法,用于使用 NSValue
和 NSNumber
类型的更通用的键值编码。您收到的错误是指您试图访问 iCloudStore
对象本身而不是 iCloud 键值存储中的“体验”键。
NSUbiquitousKeyValueStore.defaultStore()
上可用的保存键值对的方法有:
setArray:forKey:
setBool:forKey:
setData:forKey:
setDictionary:forKey:
setDouble:forKey:
setLongLong:forKey:
setObject:forKey:
setString:forKey:
选择最适合您类型的方法。