2014-11-25 5 views
1

Я использую CTAssetPicker (https://github.com/chiunam/CTAssetsPickerController), чтобы выбирать изображения, преобразовывать их в JPEG и сохранять их в удаленном хранилище. До сих пор так хорошо, до недавнего времени (и редко) я начал получать странные исключения после собирания активов:[NSNull CGImage]: исключение исключенного исключения при выборе объекта и преобразование его в JPEG

NSInvalidArgumentException 
-[NSNull CGImage]: unrecognized selector sent to instance 0x3759f3f0 

Это происходит при вызове UIImageJPEGRepresentation с изображением привезенного из сборщика активов.

Я попытался воспроизвести это, отправив нулевые значения в преобразование JPEG, но это не так. Кажется, что CGImageUIImage s посылает null, но я понятия не имею, почему это происходит.

ответ

1

Проблема в том, что вы не получили изображение. Вы можете воспроизвести свою ошибку с этим кодом:

id youThinkYourServerRetunrAnImage = [[NSNull alloc] init]; 
UIImage *image = youThinkYourServerRetunrAnImage; 
[image CGImage]; 

Вам необходимо исправить ваш запрос.

+0

Я пытался воспроизвести, передав «nil», а не экземпляр «NSNull». возгласы. Теперь мне нужно выяснить, почему он возвращает 'NSNull'. Благодаря! – Indigon

+0

NSNull - это класс по умолчанию, когда на примере JSON имеет значение . –