如何使应用程序具有位置服务选项 "while using the app"?

How to make an app to have location service option "while using the app"?

我有一个启用了位置服务的应用程序。但它没有 "while using the app" 选项,即使应用程序的 SDK 是 iOS 8.2。有谁知道如何修理它?提前致谢!

为了在您的应用的位置设置中同时支持 "While Using the App" 和 "Always" 授权,您必须在您的应用中的某个时刻同时调用 [CLLocationManager requestWhenInUseAuthorization][CLLocationManager requestAlwaysAuthorization]

请记住,尽管请求了两次授权,但每次安装应用程序时只会向用户显示一个警告对话框,与您首先请求的授权类型相对应。用户随后更新状态的唯一方法是通过“设置”应用。

我从另一个 post 那里找到了答案。基本上,我需要将以下键添加到 info.plist 文件中:

NSLocationWhenInUseUsageDescription

另外,需要调用以下代码:

if ([self.locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)]) {
    [self.locationManager requestWhenInUseAuthorization];
}