#iphone #objective-c #nstimer
#iPhone #objective-c #nstimer
Вопрос:
Возможно ли, чтобы такая ситуация произошла:
Мое приложение переходит в фоновый режим, я хочу, чтобы NSTimer запускался в
- (void)applicationDidEnterBackground:(UIApplication *)application
метод, каждые две или около того секунды. Я знаю, как запустить таймер, однако я хочу знать, могу ли я запускать код каждые 2 секунды или что бы я ни выбрал в фоновом режиме? Или после ввода приложения фоновый код не может быть запущен. Я знаю, что с Android, если приложения остаются открытыми, но сведены к минимуму, вы можете запускать код, поскольку они продолжают работать в фоновом режиме.
Ответ №1:
Вы правильно усомнились в этом. Приложение, которое переходит в фоновый режим, не может быть запущено. Таким образом, вы не можете выполнить свой код, пока приложение работает в фоновом режиме. Я бы посоветовал вам просмотреть документ Apple, выполняющий код в фоновом режиме. Он начинается с,
«Большинство приложений, которые переходят в фоновое состояние, вскоре после этого переводятся в приостановленное состояние. В этом состоянии приложение не выполняет никакого кода и может быть удалено из памяти в любое время «.
Но службам аудио, определения местоположения и voip разрешено работать в фоновом режиме. Для этих служб фоновое выполнение должно быть заранее объявлено приложением, которое их использует.
Комментарии:
1. Ах! Совершенство! Чего я пытаюсь добиться, так это того, чтобы службы определения местоположения работали в фоновом режиме! Есть ли какой-либо код, который я могу просмотреть, который делает именно это? Или мне снова снится белое Рождество? Еще раз спасибо за помощь EmptyStack <3
2. Вот и все! mobile.tutsplus.com/tutorials/iphone /…
3. Чувак, серьезно, ты лучший со времен нарезанного хлеба. Огромное спасибо.
4. Я надеюсь, что iOS — это «чувак», о котором вы говорите выше! 😉
Ответ №2:
Если вы переместите свое приложение в фоновый режим и объявите приложение как аудио, оно будет запущено.
Комментарии:
1. Мне было бы полезно использовать некоторый код, я довольно новичок в Objective C. Я был бы очень благодарен за это.