Добавить наблюдателя Для изменений в значениях по умолчанию
Отладка, если вы на самом деле переходите от своего кода неумышленно, используя следующий подход.
В вашем AppDelegate
Добавьте следующий код:
UserDefaults.standard.addObserver(self, forKeyPath: "XYZ", options: NSKeyValueObservingOptions.new, context: nil)
И наблюдайте, используя метод
override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
// Check when It's getting trigged.
}
Метод Apple Synchronize
Если вы работаете с этими асинхронными задачами, вам, возможно, придется попробовать вызвать этот метод UserDefaults.standard.synchronize()
.
Проверьте, какое значение он возвращает. Если это ложь (я никогда не видел, чтобы этот метод возвращал ложь). Вы можете сделать вывод, что что-то внутреннее мешает вам сохранить на диск.
func synchronize() -> Bool
Возвращаемое значение
true, если данные были успешно сохранены на диск, в противном случае - false.