如何在UIImagePickerController中拍摄照片后获取UIImage的GPS坐标?图像是否包含其元数据中的坐标,还是应该为图像及其坐标创建一个类并保存? 谢谢。
答案 0 :(得分:4)
答案 1 :(得分:2)
实际上,您可以在拍摄照片后立即访问图像的元数据。选择图像后系统调用的协议方法是
(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
NSDictionary参数info包含一个键:UIImagePickerControllerMediaMetadata
AFAIK,您需要 CLLocationManager 来获取当前位置并对其进行地理标记。
答案 2 :(得分:1)
从 iOS 8 开始,您可以使用Photos Framework。
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
let url = info[UIImagePickerControllerReferenceURL] as? URL
if url != nil {
let fetchResult = PHAsset.fetchAssets(withALAssetURLs: [url!], options: nil)
let asset = fetchResult.firstObject
print(asset?.location?.coordinate.latitude)
print(asset?.creationDate)
}
}