gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-11-29 05:54:11 28 4
gpt4 key购买 nike

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

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

提前致谢

最佳答案

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

关于ios - 在 swift 4 中从相机中获取图像路径后获取图像路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55330852/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com