我在UIImagePickerController的幫助下獲取了我的應用程序的照片。是否有可能從委託獲得地理數據:從相機照片元數據獲取GPS數據
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
這裏是信息的字典,是可以從它那裏得到地理標籤?
我在UIImagePickerController的幫助下獲取了我的應用程序的照片。是否有可能從委託獲得地理數據:從相機照片元數據獲取GPS數據
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
這裏是信息的字典,是可以從它那裏得到地理標籤?
使用EXIF庫http://code.google.com/p/iphone-exif/
代碼
- (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]];
...}
SO問題:UIImagePickerController and extracting EXIF data from existing photos
最多和包括iOS 5.1.1,該的UIImagePickerController不GPS位置數據添加到照片用它拍攝。這與Camera應用程序的位置服務設置無關,只控制該應用程序而不是UIImagePickerController。
您將需要使用CLLocation類來獲取位置,然後將其添加到使用UIImagePickerController拍攝的任何圖像和視頻中。
謝謝,但我怎麼可以從EXFTag * latitudeDef提取GPS數據?正如我從SO問題理解的那樣,(UIImage *)圖像中沒有GPS數據。 –
我知道這個問題太舊了,但需要使用這個iphone-exif工具包來提取數據。我已經下載並添加了該庫,但它顯示了架構i386的未定義符號:「_OBJC_CLASS _ $ _ EXFJpeg」,引用自:ViewController.o中的objc-class-ref在運行該項目時出錯。你知道爲什麼嗎?我認爲這是因爲圖書館不支持新架構。有沒有更新版本? – Johnykutty