Как я могу получить CLLocation фотографии, выбранной из UIImagePickerController в Swift?

UIImagePickerController выбирает изображение из библиотеки фотографий пользователя,

Я просто хотел бы получить координаты местоположения выбранной фотографии в Swift...

Я пробовал такие вещи, как попытка получить URL-адрес фотографии....

func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage, editingInfo: [String : AnyObject]?) {
    let imageURL = editingInfo![UIImagePickerControllerReferenceURL] as! NSURL
    self.imageFromAsset(imageURL)
}

и передать это...

func imageFromAsset(nsurl: NSURL) {
    let asset = PHAsset.fetchAssetsWithALAssetURLs([nsurl], options: nil).firstObject as! PHAsset
    var location = asset.location   //then do something with this data
}

но получение URL-адреса изображения для начала создает фатальную ошибку.

Надеюсь, кто-то может помочь, спасибо.

Сообщение об ошибке:

fatal error: unexpectedly found nil while unwrapping an Optional value
(lldb) 

Эта ошибка возникает в этой строке:

    let imageURL = editingInfo![UIImagePickerControllerReferenceURL] as! NSURL

person Leethal    schedule 26.06.2016    source источник
comment
Опубликовать сообщение об ошибке   -  person Arsen    schedule 26.06.2016


Ответы (1)


Использовать:

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject])

вместо:

imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage, editingInfo: [String : AnyObject]?)

Поскольку он устарел в iOS 3.0

https://developer.apple.com/reference/uikit/uiimagepickercontrollerdelegate/1619152-imagepickercontroller

person Arsen    schedule 26.06.2016