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,這樣就能獲取到圖片了。