相关疑难解决方法(0)

didUpdateLocations未调用

我正在尝试获取当前位置,但是didUpdateLocations中的断点永远不会被调用.

的LocationManager:

locationManager = [[CLLocationManager alloc] init];
[locationManager setDelegate:self];
[locationManager setDesiredAccuracy:kCLLocationAccuracyBest];
[locationManager setDesiredAccuracy:kCLDistanceFilterNone];
[locationManager startUpdatingLocation];
Run Code Online (Sandbox Code Playgroud)

代表方法:

- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations;
Run Code Online (Sandbox Code Playgroud)

我确认了位置服务并启用并授权.

为什么没有像它应该调用locationManager委托方法?

谢谢,迈克

xcode objective-c cllocationmanager cllocation ios

31
推荐指数
4
解决办法
3万
查看次数

didUpdateLocations未被调用

我将我的对象设置为locationManager的委托,并调用didChangeAuthorizationStatus方法,它执行此操作:

func locationManager(manager: CLLocationManager!, didChangeAuthorizationStatus status: CLAuthorizationStatus) {
    if status == CLAuthorizationStatus.AuthorizedWhenInUse {
        self.locationManager.startUpdatingLocation()
    }
}
Run Code Online (Sandbox Code Playgroud)

我也有这个方法,在这之后永远不会被调用:

func locationManager(manager: CLLocationManager!, didUpdateLocations locations: [AnyObject]!) {
    if locations.count == 0 {
        return
    }

    //Do stuff
}
Run Code Online (Sandbox Code Playgroud)

有什么想法可能没有被调用?我认为被解除分配的对象是一个选项,但是当它达到authorizationStatus方法时它也会被释放.

xcode objective-c cllocationmanager ios swift

4
推荐指数
2
解决办法
1万
查看次数

标签 统计

cllocationmanager ×2

ios ×2

objective-c ×2

xcode ×2

cllocation ×1

swift ×1