Swift 保存数据数组会导致崩溃
我尝试在arrar中添加一个项目并保存在Userdefault中,但应用程序崩溃了,我希望任何人都能指出我做错了什么Swift 保存数据数组会导致崩溃,swift,userdefaults,Swift,Userdefaults,我尝试在arrar中添加一个项目并保存在Userdefault中,但应用程序崩溃了,我希望任何人都能指出我做错了什么 private func putArray(_ value: GMSAutocompletePrediction?, forKey key: String) { guard let value = value else { return } log("THE MESSAGE \(value)", .fuck)
private func putArray(_ value: GMSAutocompletePrediction?, forKey key: String) {
guard let value = value else {
return
}
log("THE MESSAGE \(value)", .fuck)
var newArray = getArray(forKey: key)
log("THE MESSAGE ARRAY \(newArray)", .fuck)
if newArray.contains(value) {
newArray.remove(at: newArray.firstIndex(of: value)!)
} else {
newArray.append(value)
}
storage.setValue(NSKeyedArchiver.archivedData(withRootObject: newArray), forKey: key)
}
崩溃错误
[GMSAutocompletePrediction encodeWithCoder:]:发送到实例0x2818f9ce0的选择器无法识别
2019-09-26 13:40:07.300856+0100 MAX.NG暂存调试[4440:1410011]***由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:'-[gmsautocompleprediction ency encoder::]:未识别的选择器发送到实例0x2818f9ce0'
GMSAutocompletePrediction
不符合NSCoding
,因此无法将其保存为用户默认值,您可以从中提取重要的细节并创建自定义模型来保存,但我在保存之前将其转换为数据。我无法使其符合NSCoding?抱歉,不,属性是get,但您甚至无法符合并设置它们。好的,我可以这样使用它吗?struct LocalGMSAutocompletePrediction{var自动完成:GMSAutocompletePrediction?}