Я прочитал некоторые обсуждения по геолокации в фоновом режиме на PhoneGap, но у меня все еще есть проблемы.Phonegap iOS с геолокацией в фоновом режиме
Я работаю над приложением, которое использует геолокационные службы. На IOS, когда приложение находится на переднем плане, все работает нормально. Когда приложение переходит на задний план (примерно через 30-40 минут), однако геокодирование перестает работать, и я больше не получаю событие изменения позиции. В течение отчетного периода приложение успешно удаляет JSON метку времени и lng/lat каждые несколько секунд на мой удаленный сервер, поэтому я знаю, что он работает в течение этого ограниченного периода времени.
Моя конфигурация:
рамки работы: PhoneGap 2,5
Devices: IOS (проверено на 4, 4s & 5 iPhone & iPad4)
IOS Версия: 7.0.4
Xcode: версия 5.0.2 (5A3005)
Плагин: Плагин PowerManagement Plugi п для Кордова (2.0+) Вольфганг Коллер - GOFG Спорт Компьютер https://github.com/purplecabbage/phonegap-plugins/tree/master/iOS/PowerManagement
startWatch Функция:
function onDeviceReady() {
startWatch();
function startWatch() {
var options = { enableHighAccuracy: true, timeout: 3100, maximumAge: 0 };
watchID = navigator.geolocation.watchPosition(onSuccess, onError, options);
timerID = setInterval (updateLocation, 3000);
}
.
.
App-инфо PLIST Включает:
"App registers for location updates" under "Required background modes"
&
<key>UIBackgroundModes</key>
<array>
<string>location</string>
</array>
config.xml включает в себя:
<plugin name="PowerManagement" value="PowerManagement" />
Q uestions:
Мне было интересно, есть ли способ гарантировать, что JavaScript в PhoneGap работает постоянно, когда приложение находится в фоновом режиме?
Нужно ли устанавливать Wakelock/release для обеспечения эффективного использования плагина Powermanagement в iOS? Может ли кто-нибудь предложить другой плагин, возможно, конфигурацию/код, который я, возможно, пропустил?
Приветствия, Уэйн Гарднер Сидней Австралия
Большое количество приложений полагаются на фоновых потоков, чтобы обеспечить плавный пользовательский опыт: Расчет позиции GPS в фоновом режиме, например. API-интерфейсы PhoneGap построены с использованием JavaScript, который не является многопоточным и, следовательно, не поддерживает фоновую обработку. –