Могу ли я отменить метод applicationDidEnterBackground? - PullRequest
2 голосов
/ 20 декабря 2010

Я хотел отменить метод, чтобы запросить подтверждение у пользователя, когда он нажимает кнопку «HOME», где на iPhone будет выполняться в фоновом режиме.

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

Я посмотрел в ФОРУМЕ, в документации от Apple, и я ничего не нашел.

Может ли кто-нибудь мне помочь?

Заранее спасибо!

Ответы [ 2 ]

7 голосов
/ 20 декабря 2010

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

Приложение applicationDidEnterBackground: метод вашего делегата имеет примерно пять секунд для завершения любых задач и возврата.На практике этот метод должен возвращаться как можно быстрее.Если метод не возвращается до истечения времени, ваше приложение завершается и удаляется из памяти.Если вам все еще нужно больше времени для выполнения задач, вызовите beginBackgroundTaskWithExpirationHandler: метод для запроса времени выполнения в фоновом режиме, а затем запустите все длительные задачи во вторичном потоке.Независимо от того, запускаете ли вы какие-либо фоновые задачи, applicationDidEnterBackground: метод должен завершиться в течение пяти секунд

Руководство по программированию приложений iOS

4 голосов
/ 20 декабря 2010

Нет, вы не можете переопределить операционную систему или нажатие кнопки пользователя.

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

...