在iOS8之後,要使用LocationManager之前,要先跟使用者要權限,可以要求的權限分為兩種:
- 只允許App在前景使用GPS。
- 允許App在進入後景之後仍可使用GPS。
因為我要開發的是iBeacon-based App,所以想當然爾要詢問的是第二種權限。
不過要求方式差不多,所以下面同時介紹兩種方式
一、在你的plist中加入這兩個Key(也可只加入你要用的),Value的部份選string並輸入你想要在要求權限的AlertView中出現的內容。
- NSLocationAlwaysUsageDescription
- NSLocationWhenInUseUsageDescription
二、在你要使用GPS之前,用
//要求always權限
if ([self respondsToSelector:@selector(requestAlwaysAuthorization)]) {
[self requestAlwaysAuthorization];
}
//要求whenInUse權限
if ([self respondsToSelector:@selector(requestWhenInUseAuthorization)]) {
[self requestWhenInUseAuthorization];
}