iOS8定位

在IOS8中定位功能新增了兩個方法:php

- (void)requestWhenInUseAuthorization __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_8_0);- (void)requestAlwaysAuthorization __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_8_0);

這兩個新增的方法致使,以前寫的程序在iOS8運行會出現,定位功能沒法正常使用
html

這樣讓iOS8正常使用定位功能呢?ui

<1>你須要在info.plist表裏面添加兩條變量url

在Info.plist中加入兩個缺省沒有的字段
spa

  • NSLocationAlwaysUsageDescription代理

  • NSLocationWhenInUseUsageDescriptioncode

這兩個字段沒什麼特別的意思,就是自定義提示用戶受權使用地理定位功能時的提示語。orm



這樣在寫代碼:
htm

    CLLocationManager  *locationManager = [[CLLocationManager alloc]init];    locationManager.delegate = self;    [locationManager requestAlwaysAuthorization];    locationManager.desiredAccuracy = kCLLocationAccuracyBest;    locationManager.distanceFilter = kCLDistanceFilterNone;    [locationManager startUpdatingLocation];



這是在調用代理ip


- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status {    switch (status) {        case kCLAuthorizationStatusNotDetermined:            if ([locationManager respondsToSelector:@selector(requestAlwaysAuthorization)]) {                [locationManager requestWhenInUseAuthorization];            }            break;        default:            break;    }}



這樣就Ok了,就會彈出原來的提示框

相關文章
相關標籤/搜索