如何在 PHAsset 中添加图像并将其从照片库中删除?
Posted
技术标签:
【中文标题】如何在 PHAsset 中添加图像并将其从照片库中删除?【英文标题】:How to add image in PHAsset and delete it from photo library? 【发布时间】:2015-07-16 09:21:49 【问题描述】:我正在开发一个像隐藏照片这样的应用程序,我想将图像移动到我的应用程序中,因此我必须从照片库中导入图像并从库中删除该图像,但我不明白如何使用 PHAssets
以及在哪里实施。
我使用 UIPickerview 选择图像,然后从库中删除它,请任何人都可以帮助我
这是我获取图片的选择器:
UIImage *chosenImage = info[UIImagePickerControllerEditedImage];
这是删除但什么是资产:
[[phphotoLibrary sharedPhotoLibrary] performChanges:^
[PHAssetChangeRequest deleteAssets:formatWithOrientation];
completionHandler:^(BOOL success, NSError *error)
NSLog(@"Finished deleting asset. %@", (success ? @"Success." : error));
];
【问题讨论】:
【参考方案1】:试试这个代码。它对我有用。
PHFetchResult *asset = [PHAsset fetchAssetsWithALAssetURLs:@“Your asset url” options:nil];
[asset enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop)
NSLog(@"%@",[obj class]);
[[PHPhotoLibrary sharedPhotoLibrary] performChanges:^
BOOL req = [obj canPerformEditOperation:PHAssetEditOperationDelete];
if (req)
NSLog(@"true");
[PHAssetChangeRequest deleteAssets:@[obj]];
completionHandler:^(BOOL success, NSError *error)
NSLog(@"Finished Delete asset. %@", (success ? @"Success." : error));
if (success)
NSLog(@“delete successfully”);
];
];
【讨论】:
但是如何获取图片的url 为此,您必须使用 ALAssetsLibrary 而不是 UIImagePicker 导入图像 查看***.com/questions/9705478/… 这项工作并且不能使用 AlAssets 您可以使用 NSURL *imageurl = info[UIImagePickerControllerReferenceURL] 直接从 uiimagepicker 获取 url;然后将其添加到 nsmutablearray 并解决问题 andthanx keyur 你救了我很多thanx以上是关于如何在 PHAsset 中添加图像并将其从照片库中删除?的主要内容,如果未能解决你的问题,请参考以下文章