В настоящее время я работаю над проектом, который содержит мобильное приложение IOS и отдельное приложение для iPad.Они связываются с базой данных Firebase.
В мобильном приложении оно прекрасно работает для архивирования объектов и разархивирования его на другом мобильном устройстве, но на iPad я получаю следующую ошибку и поток 1: сигнал SIGABRT.
libc++abi.dylib: terminating with uncaught exception of type NSException
Он всегда заканчивается следующей строкой:
let ar = NSKeyedUnarchiver.unarchiveObject(with: array) as! [ProjectModel]
Массив значений - это Данные типа данных.
Объект-файл:
import Foundation
import UIKit
class ProjectModel: NSObject, NSCoding {
var name: String!
var controllerArray: [ControllerModel]!
init(name: String!, controllerArray: [ControllerModel]!) {
self.name = name
self.controllerArray = controllerArray
}
required convenience init(coder aDecoder: NSCoder) {
let name = aDecoder.decodeObject(forKey: "name") as! String
let controllerArray = aDecoder.decodeObject(forKey: "controllerArray") as! [ControllerModel]
self.init(name: name, controllerArray: controllerArray)
}
func encode(with aCoder: NSCoder) {
aCoder.encode(name, forKey: "name")
aCoder.encode(controllerArray, forKey: "controllerArray")
}
}