У меня есть приложение iOS, которое использует CoreData для сохранения данных, полученных с сервера через RestKit. Я создал кнопку выхода из системы, которая удаляет все NSUserDefaults
при нажатии и отправляет пользователя обратно на экран входа в систему.Нужно перезапустить приложение после выхода из системы, чтобы создать новый managedObjectContext
Когда приложение запускается в первый раз, managedObjectStore
и все другие функции CoreData генерируются в appDidFinishLaunchingWithOptions
методе appDelegate
. Однако, когда я выхожу из приложения и пытаюсь войти в исключение, вызывается, потому что мой managedObjectContext
равен нулю. Это нуль, потому что я решил не передавать его из режима viewController входа в loginController. Я хочу очистить старый и создать новый для нового пользователя.
Я хотел бы создать новый managedObjectStore/Context
, когда я удалю выход из системы и перейду на экран входа в систему. Что-то вроде этого возможно? В основном мне нужно перезапустить приложение, когда пользователь нажимает кнопку выхода из системы.
Может ли кто-нибудь показать мне, как это может быть сделано? Я довольно новичок в этом, поэтому, если это неуместно или ненужно, я открыт для изучения правильного/подходящего пути!
Wow Спасибо за быстрый ответ. Я прочитал несколько сообщений о том, что возобновление будет плохой практикой, поэтому я буду принимать ваши советы и избегать этого. Мне нравится метод доступа лучше, чем создание данных в методе didLogin. Однако мне нужно немного разъяснить. Я установил «Store» на nil при выходе из системы, но в какой момент я назову 'getManagedObjectContext'? – Ben
Всякий раз, когда вам это нужно. вы можете вызвать [appDelegate getManagedOBjectContext]; –