我正在尝试将测量值保存到核心数据可转换属性。基本上,这个答案有什么,只有一个不同的单位:如何在核心数据中保存通用测量<Unit>?
一切正常,但是我在日志中收到此消息:
[general] 'NSKeyedUnarchiveFromData' should not be used to for un-archiving and will be removed in a future release
我不知道如何解决这个问题。或者它到底是什么意思。这是我第一次使用可转换的 Core Data 属性。
谢谢
编辑:
我开了一个新课:
import Foundation
@objc(UnitTemperatureValueTransformer)
final class UnitTemperatureValueTransformer: NSSecureUnarchiveFromDataTransformer {
static let name = NSValueTransformerName(rawValue: String(describing: UnitTemperatureValueTransformer.self))
override static var allowedTopLevelClasses: [AnyClass] {
return [UnitTemperature.self]
}
public static func register() {
let transformer = UnitTemperatureValueTransformer()
ValueTransformer.setValueTransformer(transformer, forName: name)
}
}
然后我将核心数据对象的转换器值设置为:UnitTemperatureValueTransformer
.
这就是所有需要做的吗?