Определите, не стало ли приложение неактивным, потому что нажата кнопка «Домой» или телефонный звонок - PullRequest
0 голосов
/ 18 апреля 2011

Я знаю, что всякий раз, когда приложение становится неактивным, локальное уведомление UIApplicationWillResignActiveNotification будет опубликовано.В противоположном случае будет опубликовано уведомление UIApplicationDidBecomeActiveNotification.

Клиент хочет, чтобы приложение работало по-разному в зависимости от прерывания, он хочет, чтобы приложение закрывалось при нажатии кнопки «Домой», но оставалось активным, если пользователь получилтелефонный звонок.Кажется, это невозможно, я прав?Если это возможно, как я могу это сделать?

Редактировать: я знаю, как закрыть свое приложение, когда получено прерывание, мой вопрос, возможно ли провести различие, если причиной прерывания было нажатие кнопки homeили входящий телефонный звонок, поэтому мое приложение реагирует по-разному в каждом случае.

Ответы [ 2 ]

1 голос
/ 19 апреля 2011

Использование CTCallCenter уведомлений позволяет достаточно надежно различать входящий вызов или отправку в фоновом режиме с помощью домашней или многозадачной панели.

0 голосов
/ 18 апреля 2011

Если вы хотите, чтобы приложение закрывалось при нажатии кнопки «Домой», вам следует установить для клавиши UIApplicationExitsOnSuspend значение YES в файле Info.plist приложения.Если вы редактируете plist в Xcode, этот ключ отображается как Application does not run in background.

. Затем вы можете обработать все ваши завершения в ответ на уведомление UIApplicationWillTerminateNotification (или, что эквивалентно, в методе appDelegate applicationWillTerminate:.

Больше информации здесь: http://developer.apple.com/library/ios/#documentation/general/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html

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