使用writeImageToSavedPhotosAlbum将UIImage保存到相册

Ida*_*dan 9 iphone objective-c ios alassetslibrary

我正在尝试将UIImage保存到相册.我已经尝试过最后一个方法:

-(IBAction)captureLocalImage:(id)sender{

[photoCaptureButton setEnabled:NO];

// Save to assets library
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];

[library writeImageToSavedPhotosAlbum: imageView.image.CGImage metadata:nil completionBlock:^(NSURL *assetURL, NSError *error2)
 {
     //             report_memory(@"After writing to library");
     if (error2) {
         NSLog(@"ERROR: the image failed to be written");
     }
     else {
         NSLog(@"PHOTO SAVED - assetURL: %@", assetURL);
     }

     runOnMainQueueWithoutDeadlocking(^{
         //                 report_memory(@"Operation completed");
         [photoCaptureButton setEnabled:YES];
     });
 }];  

}
Run Code Online (Sandbox Code Playgroud)

imageView是一个UIImageView,包含我要保存的图像.在日志中我得到了"PHOTO SAVED - assetURL:(null)"并且照片没有保存到库中.

我究竟做错了什么?

Par*_*shi 11

只需使用此波纹管线即可保存照片库中的图像

UIImageWriteToSavedPhotosAlbum(imageView.image,nil,nil,nil);
Run Code Online (Sandbox Code Playgroud)

:)

  • 我认为 OP 是专门询问如何保存到特定相册,而不仅仅是一般地询问如何保存图像。(我确实意识到我在这里比赛迟到了,但在我看来这是一个重要的区别) (2认同)

Ida*_*dan 1

我正在使用 GPUImage,显然库本身存在某种问题。

上面的代码绝对有效。如果您想了解有关此问题的更多信息:

带有 imageFromCurrentlyProcessedOutput 的 GPUImagePicture 无法获取 UIImage