Похоже, что через некоторое время представление приложения перезагружается к настройкам по умолчанию

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

РЕДАКТИРОВАТЬ: я понял, что после iOS 5, viewDidUnload устарела, но это явление все еще происходит. Есть идеи как это исправить? Спасибо!

1 ответ

Если вы хотите делать вещи в фоновом режиме, вы должны посмотреть на фоновые задачи.

Другие вопросы по тегам