2

我正在使用自定义类来更新用户位置。初始化类时,我创建了一个 CLLocationManager 对象以供该类使用

CLLocationManager *locManager = [[CLLocationManager alloc] init];
[self setLocationManager:locManager];

返回 nil 的行是CLLocationManager *locManager = [[CLLocationManager alloc] init]; 这就是导致问题的原因。

这段代码在大多数情况下都很好用。但是在一个特定的设备(操作系统版本 3.1)上,init 返回一个 nil。知道为什么 CLLocationManager 在初始化时会返回 nil 吗?

谢谢。

4

1 回答 1

2

当应用程序首次初始化定位服务时,操作系统会询问用户这是否可行。如果他们说不,那么在随后的运行中可能会得到零。您可能需要检查这一点并优雅地降级功能。

于 2009-11-12T16:30:41.073 回答