В настоящее время я храню фотографии вот так
let imgData = self.jpegData(compressionQuality: 0.2)
try imgData.write(to: Documents.directoryURL.appendingPathComponent("\(name).jpg"))
И получаю доступ к фотографиям следующим образом:
let data = try? Data(contentsOf: Documents.directoryURL.appendingPathComponent("\(name).jpg"))
let image = UIImage(data: imgData)
enum Documents
это:
enum Documents {
static var directoryURL: URL { return FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0] }
}
Из-за автономного режима мне нужно сохранить несколько фотографий, а затем удалить их после загрузки.
И каждый раз, когда я загружаю фотографию с диска, объем оперативной памяти увеличивается. Если я загружу 100-200 фотографий, приложение выдаст sh из-за проблем с памятью. (это будет go более 1 ГБ)
Я не думаю, что фотографии занимают так много.
Когда я храню их в ОЗУ перед сохранением на диск (в массиве), они не принимаются
Только , когда они загружаются с диска - это когда они раздувают ОЗУ.
Я переключился на JPG из PNG, так что это немного лучше, но должно быть что-то, чего мне не хватает здесь, или ладья ie ошибка, которую я делаю.
Я надеюсь, черный пояс в iOS может прояснить это для меня .
Кроме того, что было бы лучше всего, если бы вы хотели сохранить большое количество фотографий в документы, на случай, если я делаю это неправильно?