保存
UIImage *img0 = [UIImage imageWithContentsOfFile:[CommonTools getPathByfileName:@"hello_0.bmp"]];
UIImage *img1 = [UIImage imageWithContentsOfFile:[CommonTools getPathByfileName:@"hello_1.bmp"]];
UIImage *img2 = [UIImage imageWithContentsOfFile:[CommonTools getPathByfileName:@"hello_2.bmp"]];
NSString * videoName = @"livevideo.mp4";
NSString *urlStr = [CommonTools getPathByfileName:videoName];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum(urlStr)) {
保存图片到相册中
UIImageWriteToSavedPhotosAlbum(img0, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
UIImageWriteToSavedPhotosAlbum(img1, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
UIImageWriteToSavedPhotosAlbum(img2, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
保存视频相册核心代码
UISaveVideoAtPathToSavedPhotosAlbum(urlStr, self, @selector(video:didFinishSavingWithError:contextInfo:), nil);
}});
回调
#pragma mark 视频保存完毕的回调
- (void)video:(NSString *)videoPath didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo{
if (error) {
[CommonTools alertDialog:@"视频导出失败!"];
NSLog(@"保存视频过程中发生错误,错误信息:%@",error.localizedDescription);
}else{
}
NSLog(@"视频保存成功.");
}
#pragma mark --- 图片保存完成后,调用的回调方法:
- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo
{
// Was there an error?
if (error != NULL)
{
// Show error message…
NSLog(@"保存照片过程中发生错误,错误信息:%@",error.localizedDescription);
[CommonTools alertDialog:@"图片导出失败!"];
}
else // No errors
{
// Show message image successfully saved
NSLog(@"Save image successful");
}
}