My problem actually seems rather silly... I am writing an iPhone application that uses MKMapKit. The app grabs the EXIF metadata from a provided geotagged photo. The problem
While you can get the location from the asset per @Allen, it is also valid to get it from the GPS metadata as you were trying to do initially. I'm not 100% sure the asset library coordinate will be the same as the coord in the GPS metadata, it depends on how Apple stores this coord. For example, if you are using a timestamp, the Asset library timestamp is different than the EXIF creation date (a different topic, admittedly).
In any case, the reason you have the coord wrong is b/c you also need to get the direction info as follows:
NSDictionary *metadata = asset.defaultRepresentation.metadata;
NSLog(@"Image Meta Data: %@",metadata);
NSDictionary *gpsdata = [metadata objectForKey:@"{GPS}"];
self.lat = [gpsdata valueForKey:@"Latitude"];
self.lng = [gpsdata valueForKey:@"Longitude"];
// lat is negative is direction is south
if ([[gpsdata valueForKey:@"LatitudeRef"] isEqualToString:@"S"]) {
self.lat = -self.lat;
}
// lng is negative if direction is west
if ([[gpsdata valueForKey:@"LongitudeRef"] isEqualToString:@"W"]) {
self.lng = -self.lng;
}
NSLog(@"\nLatitude: %@\nLongitude: %@",self.lat,self.lng);