众所周知,保存照片,无论是UIImage
还是原始NSData
到iOS'相机胶卷需要一些时间。但我已经走得更远了,我不仅将照片保存到相机胶卷,然后将其移至指定的ALAssetGroup
:
[assetsLibrary writeImageToSavedPhotosAlbum:img
orientation:(ALAssetOrientation)image.imageOrientation
completionBlock:^(NSURL* assetURL, NSError* error) {
if (error.code == 0) {
NSLog(@"saved image completed:\nurl: %@", assetURL);
// try to get the asset
[assetsLibrary assetForURL:assetURL resultBlock:^(ALAsset *asset) {
// assign the photo to the album
[[groups objectAtIndex:page] addAsset:asset];
我在后台线程上调用此方法,但仍需要非常周到的时间才能完成 - 大约3-4秒。
我需要的是我希望尽可能接近“批量拍摄”的默认iOS相机行为 - 拍摄后立即保存 ,然后下一个,下一个和下一个。
我该如何处理?使用NSOpertaionQueue
可能是一种选择,但会更快吗?
任何适用于iOS 6及更高版本的决定都受到高度赞赏