在 swift 4 中从相机获取图像路径

Get image path after took it from camera in swift 4

我在 ios 中有一个显示默认相机屏幕的按钮,当我拍照时,它会保存在 phone 中,之后我想获得

UIImagePickerControllerReferenceURL

因为我想将照片发送到我的服务器,当我尝试获取 UIImagePickerControllerReferenceURL 时,应用程序崩溃并收到 nil 值的错误

这是我的代码:

@objc func take_photo(){
        if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.camera){
            let camera_picker = UIImagePickerController()
            camera_picker.delegate = self
            camera_picker.sourceType = .camera
            camera_picker.allowsEditing = false
            self.present(camera_picker, animated: true, completion: nil)
        }
    }


func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
        if let img_original = info["UIImagePickerControllerOriginalImage"] as? UIImage{
            pickerImg_seleccionada = img_original
        }
        UIImageWriteToSavedPhotosAlbum(pickerImg_seleccionada!, self, #selector(image(_:didFinishSavingWithError:contextInfo:)), nil)
        if let img_seleccionada = pickerImg_seleccionada {
            img.display(image: img_seleccionada)
            img.contentMode = .scaleAspectFit
            let imgData: NSData = NSData(data: UIImageJPEGRepresentation((pickerImg_seleccionada)!, 0.9)!)
            let imageSize: Int = imgData.length
            img_size = Double(imageSize) / (1024.0 * 1024.0)
            rep_imagen = UIImageJPEGRepresentation((pickerImg_seleccionada)!, 0.9)
            let url_imagen = info["UIImagePickerControllerReferenceURL"] as! URL //here is the error
            image_name = url_imagen.lastPathComponent
        }

        dismiss(animated: true, completion: nil)
    }

    @objc func image(_ image: UIImage, didFinishSavingWithError error: Error?, contextInfo: UnsafeRawPointer) {
        if let error = error {
            // we got back an error!
            print("no guardada")
        } else {
            print("guardada")
        }
    }

我该如何解决?,我认为这个过程很好,因为图像已存储并且我可以获得 img_size 和 rep_imagen 但不是 url_imagen

提前致谢

当用户使用图像选择器控制器拍摄照片时,信息字典中没有 UIImagePickerControllerReferenceURL 键。没有任何内容保存到磁盘。捕获的图像是您已有的 UIImagePickerControllerOriginalImage。仅此而已。