Я установил MLSData на AppDelegate
как ниже
func getMLSBoards() {
Service.shared.getMlsBoards(completion: { (mlsResponse) in
if mlsResponse?.respCode == Code.success.rawValue {
Defaults.shared.setMLSBoards((mlsResponse?.data?.mlsBoard)!, forKey: Default.mlsBoards)
for mlsBoard in (mlsResponse?.data?.mlsBoard)! {
if mlsBoard.id == 1 {
Defaults.shared.setInt(mlsBoard.id!, forKey: Constants.kProviderID)
Defaults.shared.setString(mlsBoard.title!, forKey: Constants.kProviderValue)
Defaults.shared.setMLSBoard(mlsBoard, forKey: Default.mlsBoard)
}
}
NotificationCenter.default.post(name: NSNotification.Name.init(Notifications.nReceivedMetadata), object: nil)
}
})
}
, и я хочу получить это MLSData на моем iMessage APP
let mlsBoard = Defaults.shared.getMLSBoards(forKey: Default.mlsBoards)
, но мое приложение аварийно завершает работу с этим сообщением
Завершение работы приложения из-за необработанного исключения 'NSInvalidUnarchiveOperationException', причина: '*** - [NSKeyedUnarchiver decodeObjectForKey:]:не может декодировать объект класса (Sarnail.MlsBoard) для ключа (NS.objects);класс может быть определен в исходном коде или библиотеке, которая не связана '
Я пробовал это также
NSKeyedArchiver.setClassName("Employee", forClass: Employee.self)
NSKeyedUnarchiver.setClass(Employee.self, for: "Employee")
, но это не работает для меня Кто-то, пожалуйста, помогите мне!