如何在 PHAsset 中添加图像并将其从照片库中删除?
How to add image in PHAsset and delete it from photo library?
我正在开发一个隐藏照片之类的应用程序,我想将图像移动到我的应用程序中,因此我必须从照片库中导入图像并从库中删除该图像,但我无法理解如何使用 PHAssets
以及在哪里实施。
我使用 UIPickerview 选择图像,然后将其从库中删除,请任何人帮助我
这是我获取图像的选择器:
UIImage *chosenImage = info[UIImagePickerControllerEditedImage];
这是为了删除,但资产是什么:
[[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
[PHAssetChangeRequest deleteAssets:formatWithOrientation];
} completionHandler:^(BOOL success, NSError *error) {
NSLog(@"Finished deleting asset. %@", (success ? @"Success." : error));
}];
试试这个代码。它对我有用。
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”);
}
}];
}];
我正在开发一个隐藏照片之类的应用程序,我想将图像移动到我的应用程序中,因此我必须从照片库中导入图像并从库中删除该图像,但我无法理解如何使用 PHAssets
以及在哪里实施。
我使用 UIPickerview 选择图像,然后将其从库中删除,请任何人帮助我
这是我获取图像的选择器:
UIImage *chosenImage = info[UIImagePickerControllerEditedImage];
这是为了删除,但资产是什么:
[[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
[PHAssetChangeRequest deleteAssets:formatWithOrientation];
} completionHandler:^(BOOL success, NSError *error) {
NSLog(@"Finished deleting asset. %@", (success ? @"Success." : error));
}];
试试这个代码。它对我有用。
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”);
}
}];
}];