Restkit Mapping Deallocated в фоновом режиме?
-
27-10-2019 - |
Вопрос
У меня есть следующая структура в моем приложении (iPad, iOS 5):
Uiview1 -> uiview2 (представлен модальный).
У меня есть пользовательский класс, занимающийся службой отдыха. Этот класс обрабатывает все отображение, маршрутизацию и т. Д. В Uiview1 есть объект, использующий этот класс.
От uiview1 я представляю Uiview2 (Modal), который включает в себя UIWebView, показывающий некоторый HTML -контент и некоторые документы PDF (в зависимости от того, что было выбрано в Uiview1 пользователем).
Иногда это выглядит так, будто Uiview1 get сделку в фоновом режиме, в то время как пользователь находится в Uiview2.
Если пользователь теперь закрывает Uiview2, чтобы вернуться в Uiview1, приложение сбоя. Ошибка является своего рода «отображение Restkit для ... существует».
Мне кажется, что Uiview1 был сделкой, и теперь он нарастает на фоне, но объект Restkit по -прежнему живет. Restkit - общий объект (Singleton).
Как правильный способ получить это бегнинг?
Решение
А viewDidLoad
не является хорошим местом для настройки отображений RESTKIT - этот метод может быть назван несколько раз в течение всей жизни контроллера.
Хорошее (и безопасное) место для инициализации Restkit и установки всех отображений - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
в вашем AppDelegate. Таким образом, вы можете быть уверены, что процесс настройки выполняется только один раз, и до того, как любой потенциальный запрос будет отправлен.