我目前正在尝试使用 UIImagePickerController 在应用程序中拍摄照片,将它们保存到本地数据库并稍后将它们上传到服务。
但元数据(尤其是 EXIF)似乎并未自动与该图像捆绑在一起。我尝试像这样提取它:
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any])
{
self.imageDelegate?.saveImage( image: info[UIImagePickerControllerOriginalImage] as! UIImage, metadata: (info[UIImagePickerControllerMediaMetadata] as? NSDictionary)! )
// ...
}
Run Code Online (Sandbox Code Playgroud)
现在我应该拥有图像和元数据,但如何将其存储到 JPEG 文件中?我需要服务器上图像中的 GPS 数据。
我目前正在直接从相机胶卷中的 UImage 创建图像:
UIImageJPEGRepresentation(image,CGFloat(Constants.JPEG_QUALITY))
Run Code Online (Sandbox Code Playgroud)
这将被存储并上传。
我读过可能有使用“CGImageDestination”的可能性,但我不知道如何在我的情况下使用它们。