Наше приложение позволяет пользователю загружать видео из камеры. Это довольно стандартная штука:
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
// Enumeration over all groups with videos
ALAssetsLibraryGroupsEnumerationResultsBlock groupsEnumerationBlock = ^(ALAssetsGroup *group, BOOL *stop)
{
[group setAssetsFilter:[ALAssetsFilter allVideos]];
[group enumerateAssetsUsingBlock:^(ALAsset *result, NSUInteger index, BOOL *stop)
{
if (result) {
// do stuff here with each video
}
}];
};
[library enumerateGroupsWithTypes:ALAssetsGroupSavedPhotos usingBlock: groupsEnumerationBlock
failureBlock:^(NSError *error) {
log4Debug(@"No groups found or accessible for Camera Roll.");
}
];
Проблема конечно с iOS8. Этот код перечисляет все видео под iOS7, но под iOS8 он перечисляет все недавние видео. Видео старше 30 дней недоступны.
Действительно, когда вы смотрите на приложение «Фото» под iOS8, вы больше даже не видите «Фотопленку», а только альбом «Недавно добавленные». Теперь есть также альбом "Видео", в котором есть все видео. Доступ к этому здесь был бы прекрасен.
Мы не можем преобразовать в PhotoKit (сегодня). Мы захотим это сделать в ближайшее время, но прямо сейчас нам нужно решение, которое работает как с iOS7, так и с iOS8.