カメラから画像をキャプチャするために UIImagePickerController を使用しています。私が開発しているアプリでは、キャプチャしたばかりの画像のメタデータ、特に GPS 情報を読み取る必要があります。didFinishPickingMediaWithInfo メソッドに渡された辞書から画像のメタデータを取得しています。
-(void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingMediaWithInfo:(NSDictionary *)info
{
NSString *mediaType = [info
objectForKey:UIImagePickerControllerMediaType];
if ([mediaType isEqualToString:(NSString *)kUTTypeImage]) {
NSMutableDictionary *imgInfo = [info objectForKey:UIImagePickerControllerMediaMetadata];
NSLog(@"Image Metadata : %@",imgInfo);
//Passing the imgInfo to other methods for further processing.
}
}
しかしログを見ると、メタデータに画像の gps 情報が含まれていないことに気付きました。また、通常の iOS カメラで撮影した写真と比較すると、一部の EXIF データが欠落しています。
UIImagePickerController によって返されるメタデータが、通常の iOS カメラによって撮影された画像のメタデータと異なるのはなぜですか? GPS情報を含む画像の完全なメタデータを取得するにはどうすればよいですか?