Можно ли использовать exit (0) в «applicationDidEnterBackground: (UIApplication *) application»? - PullRequest
1 голос
/ 27 июля 2010

Мое приложение вылетает при выходе после обновления до SDK 4, ошибка - плохой доступ к памяти.

Я подумал, что если я добавлю "exit (0)" в "applicationDidEnterBackground: (UIApplication *) application",приложение будет нормально выходить.

Однако это нормально?Пока это мое единственное «решение» проблемы.

Н.С.Зомби на этот раз не слишком помогает ...

Ответы [ 3 ]

5 голосов
/ 27 июля 2010

Если есть проблема с доступом к памяти, я думаю, что лучшее решение должно быть найти и исправить проблему с памятью.

Однако, если вы хотите придерживаться способа «не входить в фон», вам следует использовать соответствующий метод: отключить многозадачность. Здесь описано .

Если вы не хотите, чтобы ваше приложение оставалось в фоновом режиме после его выхода, вы можете явно отказаться от фоновой модели выполнения, добавив ключ UIApplicationExitsOnSuspend в файл Info.plist вашего приложения и установив для него значение YES

1 голос
/ 27 июля 2010

Не помещайте exit (0) в applicationDidEnterBackground: (UIApplication *) application.

Вместо этого добавьте ключ в свой файл Info.plist, чтобы отметить, что вы хотите, чтобы приложениевыход, когда он приостановлен.Подробнее см. Параметры списка свойств .

0 голосов
/ 29 июля 2010

Я нахожу источник проблемы.Проблема в том, что мне нужно выполнить все задачи, которые влияют на интерфейс или представления в главном потоке.Выяснение этого также решило множество других ошибок, которые дают мне головной убор.Похоже, что iOS 4 более ограничена в использовании потоков

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...