Я создаю приложение и начал реализацию UserDefaults. Это не сработало, поэтому я сделал тестовое приложение, чтобы упростить вещи и проверить свое понимание. Это работает в этом приложении, но не в том, которое я разрабатываю.
Этот вопрос уже задавался, но я не смог найти ничего полезного.
UserDefaults.standard.set("TEST", forKey: "test")
//does not work
let test = "TEST"
UserDefaults.standard.set(test, forKey: "test")
//does not work
UserDefaults.standard.set(test, forKey: "test")
UserDefaults.standard.synchronize()
//synchronize is legacy and not needed
//also does not work
Однако точно такой же код работает в моем тестовом приложении. Я удалил приложение из симулятора, перезагрузил компьютер и т. Д. Не повезло.
Единственное, о чем я могу подумать, это то, что я добавил основные данные вручную в этот проект после того, как XCode заглушил их. Я почти уверен, что я сделал это правильно, но может ли что-то в AppDelegate.swift повлиять на UserDefaults?
Чтобы быть понятным, после настройки:
UserDefaults.standard.bool (forKey: "test")
// возвращает false
PS Я пометил nsuserdefaults, я не уверен, было ли это правильно или нет. Я просто использую объекты Swift, как показано в приведенном выше коде.