How to get current location latitude and longitude in IOS SDK 8.0

KkMIW picture KkMIW · Oct 1, 2014 · Viewed 11.3k times · Source

how to get current location latitude and longitude.

I have try this. Using Xcode 6.01 and IOS SDK 8.0

-(CLLocationCoordinate2D) getLocation{
    locationManager = [[CLLocationManager alloc] init];
    locationManager.delegate = self;
    locationManager.desiredAccuracy = kCLLocationAccuracyBest;
    locationManager.distanceFilter = kCLDistanceFilterNone;
    [locationManager startUpdatingLocation];
    CLLocation *location = [locationManager location];
    CLLocationCoordinate2D coordinate = [location coordinate];
    return coordinate;
}

- (void)getCurrentLocation{    
    CLLocationCoordinate2D coordinate = [self getLocation];
    NSString *latitude = [NSString stringWithFormat:@"%f", coordinate.latitude];
    NSString *longitude = [NSString stringWithFormat:@"%f", coordinate.longitude];
    NSLog(@"Latitude  = %@", latitude);
    NSLog(@"Longitude = %@", longitude);
}


- (void)viewDidLoad{
    [super viewDidLoad];
    [self getCurrentLocation];

}

Here I enable the simulator location to Deployment 8.0 iPhone simulator 4s. Even on device its not working.

@ALL Please let me know, what i have done wrong here.

Answer

KkMIW picture KkMIW · Oct 4, 2014

I figure it out issue in IOS 8.0

NSLocationAlwaysUsageDescription add this manually into application plist file, leave string value empty. This it will call the delegate methods. Never forgot about adding NSLocationAlwaysUsageDescription unless you not added this delegate method will not work. Remaining code is same. with adding delegate methods to controller class.

add this line of code in locationManager declaration code. for IOS 8.0 [locationManager requestAlwaysAuthorization];