Я использую ngCordova в проекте Ionic, и метод геолокации watchPosition
ведет себя странно.
У меня есть фабрика, которая возвращает обещание:
var watchOptions = {
frequency: 5000,
timeout: 7000,
maximumAge: 100,
enableHighAccuracy: false
};
var watch = $cordovaGeolocation.watchPosition(watchOptions);
return watch;
Я использую данные, возвращенные из обещания в контроллере:
GetCurrentLocation.then(null, function(err) {
console.log(err);
}, function(position) {
console.log(position);
});
Когда состояние страницы изменяется с помощью этого контроллера, он регистрирует позицию один раз, но после этого не повторяет. На самом деле, когда-нибудь он случайно зарегистрирует его снова. Я не уверен, должна ли позиция переместиться на определенную величину, чтобы обновить позицию, или я делаю что-то не так.