Похоже, что через некоторое время представление приложения перезагружается к настройкам по умолчанию
Я столкнулся со странной ошибкой при программировании приложения для iPhone. В основном, когда я оставляю свое приложение в фоновом режиме и затем получаю к нему доступ через долгое время (то есть всю ночь, пока я сплю), viewDidLoad
Кажется, что метод вызывается снова, хотя я не выходил из приложения (я только дважды нажал кнопку "Домой" или один раз нажал кнопку "Домой"), но все равно оставил приложение в фоновом режиме. Однако, если я оставлю приложение включенным на короткое время (в любое время от нескольких минут до нескольких часов), viewDidLoad
метод не вызывается снова и все так, как и должно быть. Проведя некоторое исследование, я обнаружил, что это потому, что viewDidUnload
вызывается метод (после того, как ОС обнаруживает, что приложение приостановлено на длительное время), который вызывает viewDidLoad
снова, когда мы вернем приложение обратно. Я узнал об этом по этой ссылке: вид, кажется, перезагружается сам, но не похоже, что есть способ предотвратить viewDidLoad
от вызова, когда viewDidUnload
называется. Есть ли способ предотвратить это viewDidUnload
метод снова вызывается? Дело в том, что я хочу, чтобы мое приложение долгое время работало в фоновом режиме (например, несколько дней в фоновом режиме) для сбора данных. Или нет ли способа обойти это? Любая помощь будет оценена. Спасибо!
РЕДАКТИРОВАТЬ: я понял, что после iOS 5, viewDidUnload
устарела, но это явление все еще происходит. Есть идеи как это исправить? Спасибо!
1 ответ
Если вы хотите делать вещи в фоновом режиме, вы должны посмотреть на фоновые задачи.