我从用户那里得到了一些评论,比如现在开始后App崩溃了。
-[CLLocationManager onClientEventAuthStatus:]
我检查Apple的日志并找到一些有趣的东西。
看起来我在位置框架内崩溃了。
我在代码中做了什么:
class MyAppDelegate: NSObject, UIApplicationDelegate, CLLocationManagerDelegate {
lazy var locationManager = {
return CLLocationManager()
}()
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
...
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyKilometer
locationManager.requestWhenInUseAuthorization()
locationManager.startUpdatingLocation()
return true
}
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
locationManager.stopUpdatingLocation()
//save location to property
}
func locationManager(manager: CLLocationManager, didFailWithError error: NSError) {
manager.stopUpdatingLocation()
}
}
另外,我将属性NSLocationWhenInUseUsageDescription
设置为一些文本。
我检查了所有方案,例如位置已停用。我无法重现任何崩溃。你知道可能的原因吗?
答案 0 :(得分:0)
您是否能够看到询问用户位置的弹出窗口?我之前遇到过一个问题,我尝试从不是视图控制器的类中获取用户位置,因为我不在视图控制器中,因为没有显示要求用户位置的警报视图,因此限制我获取用户位置。