Иногда PHAsset.fetchAssets(with: options)
ничего не возвращает при наличии изображений и разрешений .
Это нерегулярно и решается путем принудительного выхода и перезапуска приложения iOS.
Кто-нибудь еще сталкивался с этой проблемой?Я пропускаю что-то критическое, например: «Иногда вы не получите изображения обратно, потому что X?»
Вот мой код:
func load() {
ProgressIndicatorView.show(onView: self.view)
PhotosPermissions.tryGetPhotosPermission(
didSucceed: { [weak self] in
DispatchQueue.global(qos: .userInitiated).async {
let options = PHFetchOptions()
options.sortDescriptors = [NSSortDescriptor.init(key: "creationDate", ascending: false)]
options.predicate = NSPredicate(format: "mediaType = %d || mediaType = %d", PHAssetMediaType.image.rawValue, PHAssetMediaType.video.rawValue)
options.includeAllBurstAssets = false
let fetchResults = PHAsset.fetchAssets(with: options)
DispatchQueue.main.async {
self?._assets = fetchResults
self?.collectionView.reloadData()
print("Loaded \(fetchResults.count) images.")
ProgressIndicatorView.hide()
}
}
},
didFail: { [weak self] in
ProgressIndicatorView.hide()
self?.performSegue(withIdentifier: "OpenFormSegue", sender: self)
}
)
}
Когда происходит ошибка, строка журнала гласит:Loaded 0 images.