2014年12月30日 星期二

CLLocationManager在iOS8之後,如何新增權限的機制

在iOS8之後,要使用LocationManager之前,要先跟使用者要權限,可以要求的權限分為兩種:

  1. 只允許App在前景使用GPS。
  2. 允許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];

            }

沒有留言:

張貼留言