2013-02-08 65 views

回答

4

Don't you dare reading the documentation...

- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status 
{ 
    if (status == kCLAuthorizationStatusDenied) { 
     // FA1LZ 
    } 
} 
+0

呵呵.. :)非常感謝你很多.. :) – Rythm

0

檢查locationManager:didFailWithError:CLLocationManagerDelegatelocationManager:didChangeAuthorizationStatus:

0

首先需要獲得當前位置。閱讀documentation獲取當前位置。

,並使用此方法

- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status 

參數:

1 - 經理
位置管理對象報告事件。
2 - 狀態
應用程序的新授權狀態。

這種方法

使用這種方法被稱爲每當應用程序的能力,以使用位置服務的變化。可能會發生更改,因爲用戶允許或拒絕爲應用程序或整個系統使用位置服務。

更多信息閱讀official document

0

你可以用下面的委託方法去:

- (void)locationManager:(CLLocationManager*)manager didFailWithError:(NSError*)error 
{ 
    if([error code]== kCLErrorDenied) 
     self.locationDenied = YES; 

     switch ([error code]) { 
      // "Don't Allow" on two successive app launches is the same as saying "never allow". The user 
      // can reset this for all apps by going to Settings > General > Reset > Reset Location Warnings. 
     case kCLErrorDenied: 
      [appDelegate showAllowGPSLocationView]; 
     default: 
      break; 
     } 

    self.locationDefined = NO; 
} 

當用戶將不允許GPS位置,然後上面的委託方法將被調用。你可以檢查「kCLErrorDenied」並處理任何你想做的事情。

這裏,「showAllowGPSLocationView」是在「AppDelegate」中實現的方法,以通知用戶允許GPS位置。

希望能對你有幫助。

快樂編碼:)

乾杯!

相關問題