ios7删除照片不起作用
Posted
技术标签:
【中文标题】ios7删除照片不起作用【英文标题】:ios7 delete photos not work 【发布时间】:2016-02-25 02:16:33 【问题描述】:我需要在ios7上删除系统照片,这是我的代码,但不起作用
Photos.framework 仅支持 iOS8 以上。
ALAssetsLibrary *lib = [ALAssetsLibrary new];
[lib enumerateGroupsWithTypes:ALAssetsGroupSavedPhotos usingBlock:^(ALAssetsGroup *group, BOOL *stop)
[group enumerateAssetsUsingBlock:^(ALAsset *asset, NSUInteger index, BOOL *stop)
if([[asset valueForProperty:ALAssetPropertyAssetURL] isEqual:assetURLs] )
[asset setImageData:nil metadata:nil completionBlock:^(NSURL *assetURL, NSError *error)
NSLog(@"assetURL : %@",assetURLs);
NSLog(@"Error : %@",error);
];
];
failureBlock:^(NSError *error)
NSLog(@"Error : %@",error);
];
日志:
assetURL : assets-library://asset/asset.PNG?id=BAEEADAF-A1E6-4DBB-BD5A-07058B671AE2&ext=PNG
错误:错误域=ALAssetsLibraryErrorDomain 代码=-3300“写入失败”UserInfo=0x14edf940 NSLocalizedDescription=写入失败,NSUnderlyingError=0x14eb7580 "无法完成操作。(ALAssetsLibraryErrorDomain 错误 -3300.)", NSLocalizedFailureReason=写入此资产时出现问题,因为写入失败。
【问题讨论】:
【参考方案1】:新的 Photos 框架为以前存储的 ALAsset URL 提供了以下方法:
+ (PHFetchResult<PHAsset *> *)fetchAssetsWithALAssetURLs:(NSArray<NSURL *> *)assetURLs options:(PHFetchOptions *)options
来自 Apple 文档 (https://developer.apple.com/library/ios/documentation/Photos/Reference/PHAsset_Class)
资产库框架在 iOS 8.0 及更高版本中已弃用,取而代之的是照片框架。如果您的应用之前存储了来自 ALAsset 对象的 URL,并且您需要检索相应的照片框架对象,请使用此方法。
【讨论】:
以上是关于ios7删除照片不起作用的主要内容,如果未能解决你的问题,请参考以下文章
iOS7 UITableView scrollsToTop 不起作用 [重复]
水平滚动方向的iOS7 UICollectionView不起作用