我遇到的问题似乎很傻。我正在编写一个使用MKMapKit的iPhone应用程序。该应用程序从提供的带有地理标记的照片中获取EXIF元数据。问题是,我检索到的纬度和经度坐标,例如:
纬度:34.25733333333334
经度:118.5373333333333
返回了中国的位置。我是否遗漏了某个地区设置或者在使用它们之前需要转换经纬度坐标?
非常感谢您提供的任何帮助。
这是我用来获取GPS数据的代码。您会注意到我将所有内容记录在控制台上以便查看值:
void (^ALAssetsLibraryAssetForURLResultBlock)(ALAsset *) = ^(ALAsset *asset)
{
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"];
NSLog(@"\nLatitude: %@\nLongitude: %@",self.lat,self.lng);
};
NSURL *assetURL = [mediaInfo objectForKey:UIImagePickerControllerReferenceURL];
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library assetForURL:assetURL
resultBlock:ALAssetsLibraryAssetForURLResultBlock
failureBlock:^(NSError *error) {
}];
UIImage *img = [mediaInfo objectForKey:@"UIImagePickerControllerEditedImage"];
previewImage.image = nil;
self.previewImage.image = img;
NSData *imageData = UIImagePNGRepresentation(img);
if ([imageData length] > 0) {
self._havePictureData = YES;
}
self.lat
和self.lng
是什么?从使用中无法确定类型。 - Tim