Как получить обновление фонового местоположения каждые n минут в моем приложении iOS?



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



Я пробовал / рассматривал следующие варианты:





  • CLLocationManager startUpdatingLocation/startMonitoringSignificantLocationChanges: Это работает в фоновом режиме, как и ожидалось, на основе настроенных свойств, но кажется невозможным заставить его обновлять местоположение каждые n минут


  • NSTimer: работает, когда приложение работает в передний план, но, похоже, не предназначен для фоновых задач

  • локальные уведомления: локальные уведомления могут быть запланированы каждые n минут, но невозможно выполнить некоторый код, чтобы получить текущее местоположение (без необходимости запуска приложения пользователем через уведомление). Этот подход также не кажется чистым подходом, поскольку это не то, для чего следует использовать уведомления.


  • UIApplication:beginBackgroundTaskWithExpirationHandler: насколько я понимаю, это должно быть использовано для завершения некоторых работ в фоновом режиме (также ограниченном по времени), когда приложение перемещается в фоновый режим, а не реализует "длительные" фоновые процессы.


как я могу реализовать эти регулярные обновления фонового местоположения?

590   0  

Comments

    Ничего не найдено.