处理方法:
NSURL *imageRefURL = [info valueForKey:UIImagePickerControllerReferenceURL]; ALAssetsLibrary* assetLibrary = [[ALAssetsLibrary alloc] init]; void (^ALAssetsLibraryAssetForURLResultBlock)(ALAsset *) = ^(ALAsset *asset) { if (asset != nil) { ALAssetRepresentation *rep = [asset defaultRepresentation]; Byte imageBuffer = (Byte)malloc(rep.size); NSUInteger bufferSize = [rep getBytes:imageBuffer fromOffset:0.0 length:rep.size error:nil]; NSData *imageData = [NSData dataWithBytesNoCopy:imageBuffer length:bufferSize freeWhenDone:YES]; // 这个imageData就是gif的了 } else {} }; [assetLibrary assetForURL:imageRefURL resultBlock:ALAssetsLibraryAssetForURLResultBlock failureBlock:^(NSError *error){ }];
info来源如下:
info数据来源:打开相册选择完成的代理方法
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info;