众所周知,将照片(无论是原始照片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 及更高版本的决定