если вы получаете Lat lang обоим (0,00, 0,00)
, это может быть решением для вас,
шаг 1: NSLocationAlwaysUsageDescription
или NSLocationWhenInUseUsageDescription
Добавьте эти два ключа в Info.plist
шаг 2: И чем [locationManager startUpdatingLocation];
начните обновление
шаг 3: и вам нужно реализовать два метода
-(void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error {
}
-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations{
CLLocation * currentLocation = [locations lastObject];
NSLog(@"Updated Lat %f",currentLocation.coordinate.longitude);
NSLog(@"Updated Lang %f",currentLocation.coordinate.latitude);
}
из CLLocationManagerDelegate
в интерфейсе ViewController.
**step 4:**
-(void)viewDidLoad
{
[super viewDidLoad];
geocoder = [[CLGeocoder alloc] init];
manager.delegate = self;
manager.desiredAccuracy = kCLLocationAccuracyBest;
[manager requestWhenInUseAuthorization];
[manager requestAlwaysAuthorization];
[manager startUpdatingLocation];
}