CLLocationManagerDelegate -locationManager (_: startMonitoring :) не вызывается, когда нет сети - PullRequest
0 голосов
/ 04 декабря 2018

Когда я включил режим полета на моем iPhone,

func locationManager(_ manager: CLLocationManager, didExitRegion region: CLRegion)

больше не вызывались.Тем не менее, этот делегат вызывается, когда я выключаю режим полета.

Это нормально в CLLocationManager?Или мои свойства установлены неправильно.

Я уже установил все свои свойства.

lazy var locationManager: CLLocationManager = {
    let lm = CLLocationManager()
    lm.allowsBackgroundLocationUpdates = true
    lm.pausesLocationUpdatesAutomatically = false
    lm.showsBackgroundLocationIndicator = true
    lm.delegate = self
    lm.requestAlwaysAuthorization()
    let authorizationStatus = CLLocationManager.authorizationStatus()
    for region in lm.monitoredRegions {
        lm.stopMonitoring(for: region)
    }
    return lm
}()

и locationManager.startMonitoring(for: region)

1 Ответ

0 голосов
/ 04 декабря 2018

Режим полета также отключает GPS, так что да, не получая обновления местоположения, и, следовательно, ожидаются CLLocationManagerDelegate методы, не вызываемые.

...