LocationManager не обновляется с помощью фильтра

#ios #swift #cllocationmanager

#iOS #swift #cllocationmanager

Вопрос:

У меня есть LocationManager, который мы используем для регистрации местоположения iPads для бизнеса, и по какой-то причине он запускает его случайным образом, даже если я его настроил (я полагаю) правильно. Включен фоновый режим определения местоположения. Я использую Parse и Parse Server для сохранения событий, но либо он не регистрирует их, либо не сохраняет. Я даже зашел так далеко, что сделал так, чтобы звук без звука полностью поддерживал работу приложения в фоновом режиме, и оно в какой-то степени это делает. Вот код, который я использую, я что-то упускаю?

     locationManager.delegate = self
    switch CLLocationManager.authorizationStatus() {
    case .NotDetermined:
        locationManager.requestAlwaysAuthorization()
    case .AuthorizedAlways:
        self.locationManager.desiredAccuracy = kCLLocationAccuracyBest
        self.locationManager.distanceFilter = 100
        self.locationManager.startUpdatingLocation()
    default:
        break
    }
  

и

     func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
    if let location = locations.last {

        let loc = LocationTracker()
        loc.timeStamp = location.timestamp
        loc.device = UIDevice.currentDevice().name
        if PFUser.currentUser() != nil {
            loc.user = PFUser.currentUser()
        }
        loc.location = PFGeoPoint(location: location)
        loc.saveEventually()
    }
}
  

Комментарии:

1. Я не понял, в чем ваша проблема .. если ваша проблема в том, что location manager обновляется каждый раз, тогда вам нужно использовать: LocationManager.stopUpdatingLocation() в функции LocationManager (менеджер: CLLocationManager, сделал обновление местоположений: [CLLocation])

2. Моя проблема в том, что он НЕ обновляется каждые 100 метров, как это должно быть. Он делает это случайным образом, и я не уверен, почему это происходит не каждые 100 метров.

3. Просто запустите код в симуляторе, установленном в city ride, и вы увидите, что он работает.. Для меня он обновляется каждые 500m, а не на каждые 100m в устройстве