1、獲取所有照片
// 獲取所有照片相冊(cè)
PHFetchResult * result = [PHAsset fetchAssetsWithMediaType:PHAssetMediaTypeImage options:nil];
PHImageRequestOptions * options = [[PHImageRequestOptions alloc] init];
options.resizeMode = PHImageRequestOptionsResizeModeFast;
options.synchronous = NO;
options.deliveryMode = PHImageRequestOptionsDeliveryModeHighQualityFormat;
// 照片大小
CGFloat scale = [UIScreen mainScreen].scale;
CGFloat size = SCREEN_WIDTH * scale;
// 遍歷所有照片
for (PHAsset *asset in assets) {
[[PHImageManager defaultManager] requestImageForAsset:asset targetSize:CGSizeMake(size, size) contentMode:PHImageContentModeAspectFit options:options
resultHandler:^(UIImage * _Nullable result, NSDictionary * _Nullable info) {
UIImage * photo = [UIImage imageWithData:UIImageJPEGRepresentation(result, 0.9)];
});
}];
}
2、獲取用戶相冊(cè)
PHFetchOptions * options = [[PHFetchOptions alloc] init];
PHFetchResult * albums = [PHAssetCollection fetchTopLevelUserCollectionsWithOptions:options];?
// 設(shè)置相片
CGFloat scale = [UIScreen mainScreen].scale;
CGFloat size = SCREEN_WIDTH * scale;
PHImageRequestOptions * options = [[PHImageRequestOptions alloc] init];
options.resizeMode = PHImageRequestOptionsResizeModeFast;
options.synchronous = NO;
options.deliveryMode = PHImageRequestOptionsDeliveryModeHighQualityFormat;
// 遍歷相冊(cè)
[albums enumerateObjectsUsingBlock:^(PHAssetCollection * _Nonnull collection, NSUInteger idx, BOOL *stop) {?
// 相冊(cè)名稱?
NSString * title = collection.localizedTitle;? ?? ? ? ?
// 相冊(cè)里面的照片
PHFetchResult * assets = [PHAsset fetchAssetsInAssetCollection:collection options:nil];
// 遍歷照片
for (PHAsset *asset in assets) {
[[PHImageManager defaultManager] requestImageForAsset:asset targetSize:CGSizeMake(size, size)
contentMode:PHImageContentModeAspectFit options:option
resultHandler:^(UIImage * _Nullable result, NSDictionary * _Nullable info) {
UIImage * photo = [UIImage imageWithData:UIImageJPEGRepresentation(result, 0.9)];
}];
}
}];
}