gpt4 book ai didi

ios - Xcode 更改我的应用程序的定位服务

转载 作者:行者123 更新时间:2023-11-29 12:37:22 24 4
gpt4 key购买 nike

目前我有一个使用用户当前地理位置的应用程序。

每当我在我的设备或模拟器上运行该应用程序时,该应用程序都会打开并立即将我的定位服务从“已授权”变为“未确定”。出于某种原因,这只发生在我身上,而我的其他开发人员都没有。

我不确定这是我昨晚更新到 6.01 的 Xcode 的问题,还是我的代码中的某些问题。

我已尝试重置应用程序的定位服务,但当我返回应用程序时,它立即将其更改回“未确定”。

知道是什么导致了这个问题吗?有没有人遇到过类似的问题?

下面是我的 locationManager 的一段代码。

- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status{
NSLog(@"did change status");

if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusNotDetermined) {
NSLog(@"not determined");

} else if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized) {
NSLog(@"Authorized");
[[NSNotificationCenter defaultCenter] postNotificationName:@"Location Services Authorized" object:self];

} else if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusRestricted){
NSLog(@"restricted");
[[NSNotificationCenter defaultCenter] postNotificationName:@"Location Services Restricted" object:self];

} else if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusDenied) {
NSLog(@"denied");
[[NSNotificationCenter defaultCenter] postNotificationName:@"Location Services Denied" object:self];

} else {
NSLog(@"can not");

最佳答案

我在您的代码中没有看到您调用 requestWhenInUseAuthorization 的位置。这在 iOS8 中是必需的,以便在位置服务工作之前请求用户授权。

每次启动位置服务时只需在位置管理器上调用它以确保您拥有权限(如果您已经拥有权限或权限已被拒绝,它什么也不做)。

关于ios - Xcode 更改我的应用程序的定位服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25949604/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com