1
我更新我的應用程序以包含[CLLocationManager requestWhenInUseAuthorization]
。用戶授權後是否可以開始更新?在iOS7中,我會在視圖加載時使用用戶位置,但是現在有一個額外的步驟,因此我的方法沒有使用有效的經度和緯度。`CLLocationManager requestWhenInUseAuthorization`在用戶接受後執行動作
我更新我的應用程序以包含[CLLocationManager requestWhenInUseAuthorization]
。用戶授權後是否可以開始更新?在iOS7中,我會在視圖加載時使用用戶位置,但是現在有一個額外的步驟,因此我的方法沒有使用有效的經度和緯度。`CLLocationManager requestWhenInUseAuthorization`在用戶接受後執行動作
解決方法是執行CLLocationManager
Delegate
方法中的操作;
// Location Manager Delegate Methods
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
該方法在用戶授予使用位置服務權限後被調用。或者如果用戶已經授予訪問權限,那麼它將自動被調用。如果你只想調用某種方法,你可以這樣做:
// Location Manager Delegate Methods
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations{
CLLocation *location = [locations lastObject];
if(location !=nil){
//we got a location
//<YOUR METHOD GOES HERE>
[manager stopUpdatingLocation];
}
}