Если вы поддерживаете только iOS 11 и более поздние версии, вы можете напрямую получить PHAsset
с помощью клавиши .phAsset
.Вам нужно использовать PHAsset fetchAssetsWithALAssetURLs
, только если вам нужна поддержка iOS 10 или более ранней версии.
Если у вас есть ссылка PHAsset
, вы можете получить доступ к свойству location
, чтобы получить координаты изображения.
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
var asset: PHAsset?
if #available(iOS 11.0, *) {
asset = info[.phAsset] as? PHAsset
} else {
if let url = info[.referenceURL] as? URL {
let result = PHAsset.fetchAssets(withALAssetURLs: [url], options: nil)
asset = result.firstObject
}
}
if let asset = asset {
if let location = asset.location {
print("Image location is \(location.coordinate.latitude), \(location.coordinate.longitude)")
}
}
}