编辑从标题中删除的版本,但这是从 iOS 8.1 开始的
我有一个我已经构建的应用程序,它将播放来自用户 Photos.app 的视频。当我在 8.0.2 设备上安装应用程序时,我从 [PHAsset fetchAssetsWithMediaType:options:] 调用中返回视频列表没有问题,但是当我在 8.1 设备上安装完全相同的代码时,我返回了 0 个视频。有没有人遇到过这个?8.1 是否改变了我们应该再次从 Photos.app 访问照片/视频的方式?
PHFetchOptions *options = [[PHFetchOptions alloc] init];
PHFetchResult *videos = [PHAsset fetchAssetsWithMediaType:PHAssetMediaTypeVideo options:options];
任何帮助,将不胜感激。
更新
修改了我的代码以使用 PHAssetCollection 调用来尝试获取专辑,我取得了一些成功,现在在两个版本上,我都得到了 6 个视频中的 3 个(不幸的是,每次都不是相同的 3 个)。
PHFetchResult *collection = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeAlbum subtype:PHAssetCollectionSubtypeAlbumSyncedAlbum options:options];
PHFetchResult *videos = [PHAsset fetchKeyAssetsInAssetCollection:collection[0] options:nil];
编辑#2
好的,我刚刚在上面的代码中看到了我的错误,我将把它留给那些和我做同样愚蠢事情的人。我的视频获取线要求“关键”资产,这就是为什么我只得到 3 个。
PHFetchResult *collection = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeAlbum subtype:PHAssetCollectionSubtypeAlbumSyncedAlbum options:options];
PHFetchResult *videos = [PHAsset fetchAssetsInAssetCollection:collection[0] options:nil];