Realm に SKProduct を保存しようとしていますが、物乞いをしながら SKProduct を NSData に変換しようとしていますが、このエラーが発生していますTerminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[SKProduct encodeWithCoder:]: unrecognized selectorインスタンス 0x14f5cd200' に送信 *
私のクラス
import Foundation
import StoreKit
class ProductDataModel: NSObject, NSCoding {
var product = SKProduct()
// MARK: - var and let
private let coderKey = "ProductDataModel"
override init() {
super.init()
}
convenience init(product: SKProduct) {
self.init()
self.product = product
}
required init?(coder aDecoder: NSCoder) {
self.product = aDecoder.decodeObjectForKey(coderKey) as! SKProduct
}
func encodeWithCoder(aCoder: NSCoder) {
aCoder.encodeObject(self.product, forKey: coderKey)
}
}
別のクラスでアーカイブしようとしています
let productData = ProductDataModel(product: product)
let data = NSKeyedArchiver.archivedDataWithRootObject(productData)
さまざまな方法で実行しましたが、結果は同じです。どうすれば修正できますか?