这是一个可怕的错误。当使用CllocationManger时,使用startupdatinglocation或使用Alasset方法访问元数据以获取照片,该系统正在提示位置访问,如预期...但是提示在显示后立即消失。我找不到这样做的原因,希望别人有这个问题。其他警报不会发生这种情况(例如显示uialertView)。

我什至可以设置目的属性,并显示出来,但是再次,只有一会儿才能关闭。

这对我来说是一个大问题,因为我需要许可才能使用照片元数据。

有帮助吗?

解决方案 2

gh,现在问题似乎已经解决。我不知道为什么或如何。

其他提示

您是在类似方法中创建CllocationManager实例:

-(void) viewDidAppear:(BOOL)animated {
    CLLocationManager *locationManager = [[CLLocationManager alloc] init];
    locationManager.delegate = self;
    [locationManager startUpdatingLocation];
}

如果是这样,那么一旦函数退出,本地位置管理器变量就会清理。您应该在实例或静态变量中保存对位置管理器的引用:

static CLLocationManager *locationManager;
-(void) viewDidAppear:(BOOL)animated {
    locationManager = [[CLLocationManager alloc] init];
    locationManager.delegate = self;
    [locationManager startUpdatingLocation];
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top