PHImageManager requestImageForAsset Сбои на iOS13 для ресурсов фотографий, которые еще не загружены локально - PullRequest
2 голосов
/ 11 октября 2019

Исключение / сбой при вызове PHImageManager requestImageForAsset: targetSize: contentMode: options: resultHandler:

"необработанное исключение 'NSInvalidArgumentException', причина: 'executeFetchRequest: error: запрос на выборку должен иметь сущность. "

Происходит 100% времени при запросе изображений для ресурсов, которые еще не загружены локально на телефон - как правило, старые фотографии находятся глубже в фотопленке.

Я сделалуверен, что PHAsset не ноль и является действительным. Также пробовал с различными опциями / режимами. Сбои как для синхронного, так и для асинхронного запроса. Вот пример PHAsset, который вызывает сбой при запросе изображения:

<PHAsset: 0x11c712680> A38CCD23-639B-4D81-B499-03F7A429481E/L0/001 mediaType=1/8, sourceType=1, (4032x3024), creationDate=2017-10-22 22:34:40 +0000, location=1, hidden=0, favorite=0, adjusted=0

Это новый сбой на iOS 13.

Эти же ресурсы не загружаются в приложения, такие как Instagramлибо (только правильно загрузите приложение Apple для фотографий), так что что-то отключено на iOS13. Тем не менее, Instagram удается не потерпеть крах в этом случае. Хотя загрузка изображения была бы идеальной, я стараюсь, по крайней мере, справиться с этим аккуратно, а не сбой, как это делает Instagram. К сожалению, try / catch как-то не ловит это исключение.

Любые советы о том, как справиться с этим?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...