Запрет UIImagePickerController от сохранения изображений - PullRequest
0 голосов
/ 07 декабря 2018

Я создаю простое приложение, в котором я получаю изображение из UIImagePickerController (из камеры или библиотеки фотографий, зависит от выбора пользователя) и отправляю его на сервер.

Последнее, похоже, сохраняет изображенияво внутренней папке приложения, потому что, когда я делаю любую фотографию, в Меню отладки диска в XCode, я вижу каждый раз, когда 1 - 1,5 МБ записи на диск.То же самое происходит с изображениями из фото библиотеки, они тоже занимают около 1 МБ.

Это очень простой код: (VisualRecognition - это API-интерфейс IBM для использования одной из своих служб AI)

let imagePicker = UIImagePickerController()
var imageShot = UIImage() //To send later the image to the server

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
    let userPickedImage = info[UIImagePickerControllerOriginalImage] as! UIImage

    imageShot = userPickedImage
    picker.dismiss(animated: true) {
        self.elaborateImage(self.imageShot). //The sending function
    }
}

func elaborateImage(_ image: UIImage) {
    animateIn()
    let group = DispatchGroup()
    group.enter()

    DispatchQueue.main.async {
        let visualRecognition = VisualRecognition(version: self.version, apiKey: self.apiKey)

        visualRecognition.classify(image: image, acceptLanguage: self.language, failure: { (error) in
            print("There was an error")
        }, success: { (classifiedImage) in
            let classes = classifiedImage.images.first!.classifiers.first!.classes

            var classificationResults = [ScanResult]()

            for index in 0..<classes.count {
                let scan = ScanResult.init(score: Int(classes[index].score! * 100), name: classes[index].className)
                classificationResults.append(scan)
            }

            self.sortedClassificationResults = classificationResults.sorted(by: {$0.score > $1.score})

            group.leave()
        })
    }

    group.notify(queue: .main) {
        self.performSegue(withIdentifier: "goToResults", sender: self)
    }

}

После отправки изображений на сервер Я неони больше не нужны , но они продолжают увеличивать размер приложения .

Как я могу остановить UIImagePickerController от сохранения изображений в комплекте приложений?Спасибо

...