У меня есть приложение iOS 4 на основе определения местоположения, которое опирается на мониторинг значительных изменений местоположения в фоновом режиме.Состояние документов Apple:
Во время пробуждения ваше приложение переводится в фоновый режим, и ему предоставляется небольшое время для обработки данных о местоположении.Поскольку ваше приложение работает в фоновом режиме, оно должно выполнять минимальную работу и избегать любых задач (например, запросов к сети), которые могут помешать его возврату до истечения выделенного времени.
Кто-нибудь знает, как долго"небольшое количество времени?"В частности, мне интересно, есть ли у меня достаточно времени, чтобы позвонить startUpdatingLocation
в диспетчер местоположений, чтобы получить более точное исправление, чем то, что могло бы обеспечить исходное событие местоположения.(Мои фоновые события местоположения почти всегда сообщают об их horizontalAccuracy
как 1000 м.)
Если «маленькое количество времени» Apple будет недостаточно для этой цели, я могу позвонить beginBackgroundTaskWithExpirationHandler:
из фонового приложения взаказать больше времени?Я знаю, что это обычно дает вам дополнительные 600, что более чем достаточно.