【发布时间】:2016-03-21 01:41:17
【问题描述】:
我在 AppDelegate 文件中使用 Swift 在我的应用中添加了 CLLocationManager。
在 Appdelegate.swift 文件中,
import CoreLocation
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate, CLLocationManagerDelegate {
var locationManager: CLLocationManager!
在 didbecomeActive 方法中:
func applicationDidBecomeActive(application: UIApplication) {
if((locationManager) != nil)
{
locationManager.stopMonitoringSignificantLocationChanges()
locationManager.delegate = nil
locationManager = nil
}
locationManager = CLLocationManager()
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyBest
locationManager.activityType = CLActivityType.OtherNavigation
locationManager.requestAlwaysAuthorization()
locationManager.startMonitoringSignificantLocationChanges()
}
如果我使用startUpdatingLocation,didUpdateLocations 方法会被调用,但不会被startMonitoringSignificantLocationChanges 调用。
为什么startMonitoringSignificantLocationChanges 没有被调用。
我正在ios模拟器中测试这个。我不知道如何签入设备。
【问题讨论】:
标签: ios swift ios-simulator cllocationmanager location-services