一个PHImageManager获取图片要注意的坑


PHImageRequestOptions *options = [[PHImageRequestOptions alloc] init];
        // 同步获得图片, 只会返回1张图片
        options.synchronous = YES;
        options.resizeMode = PHImageRequestOptionsResizeModeFast;
        options.deliveryMode = PHImageRequestOptionsDeliveryModeFastFormat;
        [[PHImageManager defaultManager] requestImageForAsset:asset targetSize:CGSizeMake(200, 300) contentMode:PHImageContentModeAspectFill options:options resultHandler:^(UIImage * _Nullable result, NSDictionary * _Nullable info) {
            
        }];

 一般可以正常获取到图片。但是有时在手机系统相册中可以看到的图片,而自己开发的App想要浏览大图却获取不到图片。可能的原因有可能你的图片在iCloud上,怎么确定呢?可以打印一下resultHandler回调中的info,里面如果有PHImageResultIsInCloudKey = 1,那么你需要在options中设置一个字段networkAccessAllowed=YES,这样就能获取到图片了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM