Приложение зависает при переключении на фронтальную камеру [UIImagePickerController] - PullRequest
0 голосов
/ 28 мая 2019

Мое приложение зависает при нажатии кнопки для переворачивания камеры сзади вперед. Я сталкиваюсь с этой проблемой только в iPhone XS / XS Max . Но когда я запускаю приложение из этого контроллера представления классов, все работает нормально.

Пожалуйста, помогите мне решить эту проблему.

class UploadViewController: UITableViewController,UINavigationControllerDelegate, UIImagePickerControllerDelegate {

var imagePicker = UIImagePickerController()

override func viewDidLoad() {
        super.viewDidLoad()
        DispatchQueue.main.async {
            checkCameraPermission()
        }
    }

//Camera access
    func camera()
    {
        if(UIImagePickerController .isSourceTypeAvailable(UIImagePickerController.SourceType.camera)){
            imagePicker.sourceType = UIImagePickerController.SourceType.camera
            imagePicker.mediaTypes = ["public.image"]
            imagePicker.allowsEditing = true
            imagePicker.delegate = self
            self.present(imagePicker, animated: true, completion: nil)
        }
        else{
            let alert  = UIAlertController(title: "Warning", message: "You don't have camera", preferredStyle: .alert)
            alert.addAction(UIAlertAction(title: "OK", style: .default, handler: nil))
            self.present(alert, animated: true, completion: nil)
        }
    }  
}

extension UploadViewController {

    func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {

        if let image = info[.editedImage] as? UIImage {
            self.imagePickedBlock?(image)
            self.appImage = image
            self.imageView.image = image
            UIImageWriteToSavedPhotosAlbum(image, self, #selector(image(_:didFinishSavingWithError:contextInfo:)), nil)
            //            let imageData = image.pngData()! as NSData
        }
        else {
            print("No image found")
            return
        }
        picker.dismiss(animated: true, completion: nil)
    }


Отладчик выдает мне эту ошибку:

Тема 48: EXC_BAD_ACCESS (код = 2, адрес = 0 * 16b142640)

...