oli*_*ier 8 objective-c photos ios ios8
在iOS 8上,我希望将所有图片存储在设备上.我的问题是我确实得到了它们,但有些不止一次.PHAsset
所有图片的属性(hidden,mediaSubtypes等)都是相同的,所以我不能排除PHAssetMediaSubtypePhotoHDR
子类型.我找到的唯一方法是不添加具有相同日期的多张图片,但是当使用相同的创建日期保存多张照片时,这是一个问题.
有谁知道我为什么会得到这些副本以及我能做些什么来避免它们?
这是我得到图片的方式:
PHFetchOptions *fetchOptions = [PHFetchOptions new];
fetchOptions.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"creationDate" ascending:YES],];
PHFetchResult *phAssets = [PHAsset fetchAssetsWithMediaType:PHAssetMediaTypeImage options:fetchOptions];
Run Code Online (Sandbox Code Playgroud)
自iOS 8.1起,fetchAssetsWithMediaType:
和fetchAssetsWithOptions:
方法的行为发生了变化,它们不再包括从iTunes同步到设备的照片或存储在iCloud共享照片流中的照片.
来源:文档修订历史和PHAsset类参考.
您可以尝试使用Moments Collections:
PHFetchResult * moments = [PHAssetCollection fetchMomentsWithOptions:nil];
for (PHAssetCollection * moment in moments) {
PHFetchResult * assetsFetchResults = [PHAsset fetchAssetsInAssetCollection:moment options:nil];
for (PHAsset * asset in assetsFetchResults) {
//Do something with asset, for example add them to array
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6324 次 |
最近记录: |