我正在使用谷歌谷歌地方api或iOS应用程序,并想知道如何避免不得不要求允许"永远在" location(NSLocationAlwaysUsageDescription)。我不认为我的应用程序需要在后台访问该位置(是否有理由?)
我的谷歌地方api通话是在viewDidLoad的回调中。我应该把它放在别处,以便只要求较少侵入性的权限吗?
由于
答案 0 :(得分:2)
CLLocationManager
上有2个请求位置访问的方法。要在应用运行时请求位置访问权限,您需要致电requestWhenInUseAuthorization
。
例如:
let locationManager = CLLocationManager()
locationManager.requestWhenInUseAuthorization()
我假设您正在关注此guide,其中显示位置访问权限:
locationManager.requestAlwaysAuthorization()
该方法确实要求访问始终使用您设备的位置,即使应用程序在后台也是如此。
希望有所帮助!