deferredLocationUpdatesAvailable在iOS 10中返回NO

我正在尝试使用一些CoreLocationfunction,并遇到延迟位置更新的问题。

由于某些原因,当应用程序更新为iOS 10 deferredLocationUpdatesAvailable返回NO始终。 我正在testingiPhone 6s,所以我知道该设备是能够使用GPSfunction。

我试着用这个来debugging:

[CLLocationManager deferredLocationUpdatesAvailable] 

我不知道这是否是iOS 10的问题,或者如果我有东西设置不正确。

在这个方法中:

 - (void)locationManager:(CLLocationManager *)manager didFinishDeferredUpdatesWithError:(NSError *)error { self.deferringUpdates = NO; NSLog(@"DEFERRING Error: [%@]", error); if (error) { [[LocationManagerClient alertWithMessage:error.localizedDescription andTitle:error.domain] show]; } } 

我结束了logging这个错误:

 DEFERRING Error: [Error Domain=kCLErrorDomain Code=11 "(null)"] 

有没有人遇到这个问题与iOS 10或有任何想法是怎么回事?

编辑:这是我如何设置距离filter

 - (void)configureForApplicationWillResignActive { [_locationManager setAllowsBackgroundLocationUpdates:YES]; [_locationManager setPausesLocationUpdatesAutomatically:NO]; [_locationManager setDesiredAccuracy:kCLLocationAccuracyBest]; [_locationManager setDistanceFilter:kCLDistanceFilterNone]; // use distance filter [_locationManager requestAlwaysAuthorization]; } - (void)configureForApplicationDidBecomeActive { [_locationManager setAllowsBackgroundLocationUpdates:YES]; [_locationManager setPausesLocationUpdatesAutomatically:NO]; [_locationManager setDesiredAccuracy:kCLLocationAccuracyBest]; [_locationManager setDistanceFilter:kCLDistanceFilterNone]; // use distance filter [_locationManager requestAlwaysAuthorization]; } 

我已经提出了一个雷达(28303779)的概念样本代码的certificate – 也包含从雷达的措辞。 我也开了一个开发论坛post ,看来很多工程师都面临同样的问题。 deferredLocationUpdatesAvailable()也在iOS 10中返回false。看起来像苹果已经故意closures了function。

更新

我的错误报告closures,说'它按预期工作'。 我想苹果不打算修复它,它被错误地取出没有贬低首先。

我看起来像这是在iOS 10中的错误

我们应该把所有的雷达文件都修好,请把我的文件打开: openradar.appspot.com/radar?id=4927958787555328