最近在做保存多张图片到相册,以前的项目只是单张保存。使用多张以后会出图片缺失的情况。排查一下原因是保存相册的时候,我们循环保存,相册显示繁忙,所以个别几张图片没有保存过去。为了解决这个问题,我们可以使用递归去实现。就是成功一张再保存下一张。
-(void)saveBtn
{
[SSGOTools againRequestPhotoWithblock:^(BOOL isAgree) {
if (isAgree) {
//确认开启权限
self.listOfImages = [NSMutableArray new];
int photoNum ;
photoNum = (int)_photoArray.count;
if (_photoArray.count > 9) {
photoNum = 9;
}
for (int i = 0; i < photoNum; i++) {
NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:_photoArray[i]]];
UIImage *myImage = [UIImage imageWithData:data];
[self.listOfImages addObject:myImage];
}
//递归保存