+ (void)uploadImages:(NSArray *)imageArray progress:(void (^)(CGFloat))progress success:(void (^)(NSArray *))success failure:(void (^)())failure
{
NSMutableArray *array = [[NSMutableArray alloc] init];
__block float totalProgress = 0.0f;
__block float partProgress = 1.0f / [imageArray count];
__block NSUInteger currentIndex = 0;
TDQiNiuUploadHelper *uploadHelper = [TDQiNiuUploadHelper sharedInstance];
__weak typeof(uploadHelper) weakHelper = uploadHelper;
uploadHelper.singleFailureBlock = ^() {
failure();
return;
};
uploadHelper.singleSuccessBlock = ^(NSString *url) {
[array addObject:url];
totalProgress += partProgress;
progress(totalProgress);
currentIndex++;
if ([array count] == [imageArray count]) {
success([array copy]);
return;
}
else {
// 上传单张图片
[TDSystemService uploadImage:imageArray[currentIndex] progress:nil success:weakHelper.singleSuccessBlock failure:weakHelper.singleFailureBlock];
}
};
// 上传单张图片
[TDSystemService uploadImage:imageArray[0] progress:nil success:weakHelper.singleSuccessBlock failure:weakHelper.singleFailureBlock];
}
@interface TDQiNiuUploadHelper : NSObject
@property (copy, nonatomic) void (^singleSuccessBlock)(NSString *);
@property (copy, nonatomic) void (^singleFailureBlock)();
+ (instancetype)sharedInstance;
@end