Почему люди пишут здесь, когда они явно не знают ответа или не понимают, что вы можете и не можете хранить в NSUserDefaults?
Класс NSUserDefaults предоставляет удобные методы для доступа к распространенным типам, таким какв виде чисел с плавающей точкой, двойных чисел, целых чисел, логических значений и URL-адресов.Объектом по умолчанию должен быть список свойств, то есть экземпляр (или для коллекций комбинация экземпляров): NSData, NSString, NSNumber, NSDate, NSArray или NSDictionary.Если вы хотите сохранить какой-либо другой тип объекта, вам обычно следует заархивировать его, чтобы создать экземпляр NSData.Для получения более подробной информации см. «Руководство по программированию предпочтений и настроек».- Из документации
Вам нужно использовать NSKeyedArchiver, чтобы превратить данные CLLocation в NSData.Затем используйте NSKeyedUnarchiver, чтобы превратить NSData обратно в данные CLLocation.
Следующая проблема, которую необходимо решить, - это когда вы архивируете объекты CLLocation и сохраняете их в UserDefaults, не разархивируйте должным образом.Единственным решением может быть сохранение их в файл.