首页 > 解决方案 > LocationManager requestWhenInUseAuthorization 中的语法错误

问题描述

错误截图:

代码:

 if (_locationManager == nil) {
        _locationManager = [[CLLocationManager alloc] init];
        _locationManager.delegate = self;

        _locationManager.requestWhenInUseAuthorization; // this is OK with warning
        _locationManager.requestWhenInUseAuthorization(); // this is giving me error
    }

我对iOS开发相当陌生,所以不知道如何解决它。

标签: iosobjective-c

解决方案


在 Swift 中开发时可以尝试以下操作:

    let locationManager = CLLocationManager()

    locationManager.requestWhenInUseAuthorization()
    locationManager.delegate = self

如果您使用选择的语言创建了一个项目,这应该可以工作 Swift。 在此处输入图像描述

如果您使用 Objective-C 进行开发,我认为最好的方法是:

let locationManager = [[CLLocationManager alloc] init];
[locationManager requestWhenInUseAuthorization];
[locationManager delegate] = self;

推荐阅读