CLLocation Manager 只为应用程序首先工作 运行

CLLocation Manager work only for the application first run

CLLocation 管理器首先只为应用程序工作运行。 这是我的代码。

self.locationManager = [[CLLocationManager alloc] init];
self.locationManager.delegate = self;
self.locationManager.distanceFilter = kCLDistanceFilterNone;
self.locationManager.desiredAccuracy = kCLLocationAccuracyBest;

if ([self.locationManager respondsToSelector:@selector(requestAlwaysAuthorization)])
{
    [self.locationManager requestAlwaysAuthorization];
}
[self.locationManager startUpdatingLocation];

我找到了解决方案,问题出在模拟器上,当您重新启动应用程序时,位置会转到默认位置,即 none。

所以当我重新启动我的应用程序时,我得到了错误 didFailWithError: Error Domain=kCLErrorDomain Code=0.

您应该在重新打开应用程序时从调试 -> 位置选择一个新位置,或者使用设备进行测试。

尝试在模拟器的位置调试中进行高速公路驾驶以测试您的位置,当您关闭应用程序位置时转到none。 将其更改为高速公路