Objective c 从相机照片元数据获取GPS数据

Objective c 从相机照片元数据获取GPS数据,objective-c,gps,Objective C,Gps,在UIImagePickerController的帮助下,我为我的应用程序获取了一张照片。是否可以从学员处获取地理数据: - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 这是信息字典,可以从中获取地理标记吗?使用EXIF库 代码 所以问题:在iOS 5.1.1之前(包括iOS 5.1.1),UIImagePick

在UIImagePickerController的帮助下,我为我的应用程序获取了一张照片。是否可以从学员处获取地理数据:

 - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
这是信息字典,可以从中获取地理标记吗?

使用EXIF库

代码


所以问题:

在iOS 5.1.1之前(包括iOS 5.1.1),UIImagePickerController不会将GPS位置数据添加到使用它拍摄的照片中。摄像头应用程序的位置服务设置是什么并不重要,它只控制该应用程序,而不控制UIImagePickerController


您需要使用CLLocation类获取位置,然后将其添加到使用UIImagePickerController拍摄的任何图像和视频中。

谢谢,但我如何从EXFTag*latitudeDef提取gps数据?正如我从SO问题中了解到的,(UIImage*)图像中没有gps数据。我知道这个问题太老了。但是需要使用这个iphone exif工具包来提取数据。我已经下载并添加了该库,但它显示了架构i386的未定义符号:“\u OBJC\u CLASS\u$\u EXFJpeg”,引用自:ViewController中的OBJC CLASS ref.o运行项目时出错。你知道为什么吗?。我认为这是因为该库不支持新的体系结构。有更新版本吗?
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo {
    NSData* jpegData = UIImageJPEGRepresentation (image,0.5);
    EXFJpeg* jpegScanner = [[EXFJpeg alloc] init];
    [jpegScanner scanImageData: jpegData];
    EXFMetaData* exifData = jpegScanner.exifMetaData;
    EXFTag* latitudeDef = [exifData tagDefinition: [NSNumber numberWithInt:EXIF_GPSLatitude]];
    EXFTag* longitudeDef = [exifData tagDefinition: [NSNumber numberWithInt:EXIF_GPSLongitude]];
...}