У меня есть приложение, которое объединяет несколько видео, первоначальный список PHAssets отображается и выбирается для формирования массива PHAssets. Теперь на экране, который создает видео, мне нужно просмотреть и извлечь AVAsset из PHAsset.
Проблема, которую я пытаюсь понять, заключается в том, как отслеживать прогресс и определять окончание всех асинхронных выборок. Когда цикл завершен, я могу перейти к объединению всех видео.
for (PHAsset * object in self.arraySelectedAssets) {
[[PHImageManager defaultManager] requestAVAssetForVideo:object options:nil resultHandler:^(AVAsset *avAsset, AVAudioMix *audioMix, NSDictionary *info) {
NSLog(@"Fetched");
//here asset in nil! IOS 10 only, IOS 11 works fine
AVURLAsset * assetUrl = (AVURLAsset*)avAsset;
}];
}