Как сжать / изменить размер изображения на iOS перед загрузкой на сервер?

В настоящее время я загружаю изображение на сервер с помощью Imgur на iOS со следующим кодом:

NSData* imageData = UIImagePNGRepresentation(image);
NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString* fullPathToFile = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"SBTempImage.png"];
[imageData writeToFile:fullPathToFile atomically:NO];

[uploadRequest setFile:fullPathToFile forKey:@"image"];

Код отлично работает при запуске в симуляторе и загрузке файла из библиотеки фотографий симулятора, потому что я использую быстрое соединение Ethernet. на iPhone при выборе изображения, сделанного на iPhone. Итак, я попробовал это, сохранив небольшое изображение из Интернета и попытавшись загрузить его, и это сработало.

Это наводит меня на мысль, что большие изображения, сделанные на iPhone тайм-аут из-за некоторых какая медленная сеть 3G. Есть ли способ сжать / изменить размер изображения с iPhone перед его отправкой?

75
задан Cœur 22 May 2019 в 13:41
поделиться