Одобряет ли Apple использование метода setKeepAliveTimeout: обработчик для обновления местоположения GPS на сервере? - PullRequest
1 голос
/ 20 октября 2011

Я пишу приложение, которому нужно время от времени обновлять сервер о местоположении пользователя, когда приложение работает в фоновом режиме. Я знаю, что могу сделать это, используя setKeepAliveTimeout: handler: метод. Я знаю, что этот метод специально для приложений VoIP, но мне было интересно, разрешит ли Apple такое использование для обновления местоположения на сервере?

Ответы [ 2 ]

1 голос
/ 03 ноября 2013

Вам не нужно это setKeepAliveTimeout.

Я рекомендую прочитать официальную документацию Apple: https://developer.apple.com/library/ios/documentation/userexperience/conceptual/LocationAwarenessPG/CoreLocation/CoreLocation.html

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

КСТАТИ. Для этого вам понадобится location фоновый режим.

И прогмр прав. Для использования setKeepAliveTimeout вам понадобится фоновый режим VoIP. И если ваше приложение не является настоящим приложением VoIP, почти гарантировано, что ваше приложение будет отклонено.

1 голос
/ 21 октября 2011

В документации говорится, что ваш обработчик получает только 10 секунд, чтобы поддерживать сетевое соединение для VoIP-вызовов при использовании метода setKeepAliveTimeout:handler:. См. этот ответ .

Этот звонок предназначен для voip приложений, и вы должны иметь voip в своем ключе UIBackgroundModes (info.plist). Использование этого, вероятно, будет отклонено, если вы не пишете приложение для VoIP.

...