У меня есть приложение, которое отображает список фотоальбомов для пользователя, чтобы они могли выбирать фотографии внутри них и загружать их на сервер. Это все хорошо и надежно, но один человек, который обновил свою библиотеку Mac и iPhoto до Photos, сообщил, что, когда они теперь используют приложение, некоторые из их фотоальбомов на их iPhone и iPad говорят «0 фотографий», когда эти альбомы работали до обновления. .
Я просто перечисляю группу ресурсов (попутно проверяя ошибки) и создаю UITableViewCell
с заголовком и количеством фотографий с миниатюрой. Это работает уже четыре года, и я только что обновил код до Swift. До обновления Photos не было сообщений о проблемах со старым кодом Obj C или новым кодом Swift. В примечаниях к выпуску я не нашел ничего, относящегося к этой проблеме.
Если вы посмотрите на обновленную библиотеку фотографий в приложении «Фотографии» на iPhone, альбомы теперь находятся в папке «Альбомы iPhoto». Это те, у кого случайные проблемы.
Код ниже извлекает группу из готового массива, устанавливает фильтр только на фотографии и получает количество фотографий.
Код для извлечения эскиза и заголовка не указан, поскольку он всегда работает и не имеет отношения к проблеме.
Кроме того, это всегда происходит с одними и теми же альбомами. В документации Apple ничего не говорится о numberOfAssets()
, кроме того, что он основан на фильтрах. Фильтр действителен, и проверено, что затрагиваемые альбомы содержат изображения и не содержат видео.
Любые идеи о том, почему это происходит, будут высоко оценены.
let assetGroup = assetsGroup[indexPath.row] as! ALAssetsGroup
assetGroup.setAssetsFilter(ALAssetsFilter.allPhotos())
let photoCount = assetGroup.numberOfAssets()