Что я могу сделать внутри фонового потока "location"? - PullRequest
4 голосов
/ 31 июля 2010

Ради этого вопроса предположим, что я планирую создать клиентское приложение Google Локатор для iOS 4. Мое приложение должно загружать местоположение пользователя GPS каждые две минуты, а также загружать местоположения друзей пользователя. - на заднем плане!

мое приложение не может дождаться, когда ОС его разбудит на коммутаторах сотовой вышки (поскольку они могут произойти только после 2 км, в то время как мое приложение требует постоянного обновления gps), поэтому я понимаю, что могу создать поток, аналогичный GPS-навигаторы используются для работы в фоновом режиме.

У меня нет знаний в программировании iPhone, мне просто нужно знать, выполнимо ли мое приложение.

  1. Смогу ли я получить доступ к Интернету из фонового потока (и загрузить местоположение пользователя gps) или он ограничен только выборкой местоположения GPS. 1.
  2. Apple утвердит такое приложение или этот тип использования запрещен? потому что мое приложение не очень критично, например, GPS-навигатор

Спасибо!

Ответы [ 2 ]

3 голосов
/ 31 июля 2010

Как сказал Дон, iOS будет отправлять события местоположения в приложения, которые его поддерживают.Оттуда приложение может делать то, что ему нужно, с событием местоположения.

Фоновые приложения могут регистрироваться для одного из трех вариантов:

  1. Только существенные изменения: маломощный способ отслеживания местоположения, который вызывает приложение только при значительном изменениив местоположении
  2. Стандартные службы определения местоположения: совместимы со всеми устройствами iOS, которые могут использовать службы определения местоположения, позволяют указать изменение расстояния и работают в фоновом режиме.Однако, если приложение было прекращено или приостановлено, iOS не будет пытаться перезапустить приложение.
  3. Службы непрерывного определения местоположения: позволяет программе получать постоянные обновления местоположения, и iOS не будет приостанавливать приложение при отправке вbackground.

Подробнее: Выполнение кода в фоновом режиме и Руководство по программированию осведомленности о местоположении

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

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

Вы получите сообщение locationManager:didUpdateToLocation:fromLocation: в вашем приложении.Там вы можете делать все, что вам нужно, хотя вы не должны обновлять интерфейс или использовать Open GL, если вы находитесь в фоновом режиме.

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