UIApplication вроде выходит в фоновом режиме - PullRequest
1 голос
/ 24 октября 2011

Когда вы открываете приложение и снова нажимаете домашний экран, приложение, очевидно, находится в фоновом режиме. Когда вы открываете другие приложения и ждете некоторое время, представления моего приложения были выгружены (например, UITableView перезагружает данные).

Есть ли какое-то уведомление или как мне узнать, собирается ли мое приложение выпустить их представления? Это просто viewDidUnload?

Ответы [ 2 ]

0 голосов
/ 24 октября 2011

к сожалению, когда ваше приложение помещается в фоновый режим, оно замораживается и не будет получать события. Если вы не запросили некоторое время фоновой обработки и не предоставили системе задачу фоновой обработки Expiration Handler:

backgroundTask_ = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{

     // Peform clean up work

     // Mark the task now as invalid
     [[UIApplication sharedApplication] endBackgroundTask:backgroundTask_];
     backgroundTask_ = UIBackgroundTaskInvalid;
 }];

и в этом случае после истечения дополнительного неопределенного времени обработки будет вызван обработчик истечения срока действия.

Некоторые хорошие справочные документы можно найти здесь Состояния приложений и многозадачность . Но даже тогда вы не сможете сделать многое для очистки.

Удачи

0 голосов
/ 24 октября 2011

Эта ссылка должна помочь: Разработка iPhone - Предупреждение о симуляции памяти

В основном вы получили предупреждение о памяти, и части представления были выгружены.

...