您的位置:首页 > 移动开发 > 微信开发

iOS开发微信分享图片32K限制解决方案

2016-07-21 17:31 691 查看

问题描述:集成了第三方分享之后,点击微信可能会出现不跳转的情况,没有任何提示。很可能是因为要分享的图片超过了32K,这是该死的微信自己做的限制。

方案:当然是压缩了,一点点压缩,直到小于32K。

+ (UIImage *)zipImageWithUrl:(id)imageUrl
{
NSData * imageData = [[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:imageUrl]];
imageData = UIImagePNGRepresentation(imageUrl);
CGFloat maxFileSize = 32*1024;
CGFloat compression = 0.9f;
CGFloat maxCompression = 0.1f;
UIImage *image = [UIImage imageWithData:imageData];
NSData *compressedData = UIImageJPEGRepresentation(image, compression);
while ([compressedData length] > maxFileSize && compression > maxCompression) {
compression -= 0.1;
compressedData = UIImageJPEGRepresentation(image, compression);
}
UIImage *compressedImage = [UIImage imageWithData:imageData];
return compressedImage;
}


附:微信这该死的平台还限制了大小,如果还是不行,就尝试缩小一下图片尺寸吧。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: