AssetsLibrary.framework
来源:互联网 发布:淘宝买东西不评价 编辑:程序博客网 时间:2024/04/30 02:16
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library enumerateGroupsWithTypes:ALAssetsGroupAll
usingBlock:^(ALAssetsGroup *group, BOOL *stop)
{
NSLog(@"%@", group);
[group setAssetsFilter:[ALAssetsFilter allAssets]];
NSLog(@"名称:%@", [group valueForProperty:ALAssetsGroupPropertyName]);
NSNumber* groupType = [group valueForProperty:ALAssetsGroupPropertyType];
switch ([groupType unsignedIntegerValue]) {
case ALAssetsGroupAlbum:
{
NSLog(@"来自我的电脑或者是在设备上创建");
NSString* persistentID = [group valueForProperty:ALAssetsGroupPropertyPersistentID];
if ([[persistentID substringWithRange:NSRangeFromString(@"0,8")] isEqualToString:@"00000000"])
{
NSLog(@"来自我的电脑");
}
break;
}
case ALAssetsGroupSavedPhotos:
NSLog(@"相机胶卷");
break;
case ALAssetsGroupPhotoStream:
NSLog(@"我的照片流");
break;
default:
break;
}
}
failureBlock: ^(NSError *error)
{
NSLog(@"No groups");
}];
//获取相册所有图片并遍历
self.assetsLibrary = [[ALAssetsLibraryalloc] init];
dispatch_queue_t dispatchQueue =dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0);
dispatch_async(dispatchQueue, ^(void) {
// 遍历所有相册
[self.assetsLibraryenumerateGroupsWithTypes:ALAssetsGroupAll
usingBlock:^(ALAssetsGroup *group,BOOL *stop) {
// 遍历每个相册中的项ALAsset
[group enumerateAssetsUsingBlock:^(ALAsset *result, NSUInteger index,BOOL *stop) {
__block BOOL foundThePhoto = NO;
if (foundThePhoto){
*stop = YES;
}
// ALAsset的类型
NSString *assetType = [result valueForProperty:ALAssetPropertyType];
if ([assetType isEqualToString:ALAssetTypePhoto]){
foundThePhoto =YES;
*stop = YES;
ALAssetRepresentation *assetRepresentation =[result defaultRepresentation];
CGFloat imageScale = [assetRepresentation scale];
UIImageOrientation imageOrientation = (UIImageOrientation)[assetRepresentationorientation];
dispatch_async(dispatch_get_main_queue(), ^(void) {
CGImageRef imageReference = [assetRepresentation fullResolutionImage];
// 对找到的图片进行操作
UIImage *image =[[UIImage alloc]initWithCGImage:imageReference scale:imageScaleorientation:imageOrientation];
if (image != nil){
//获取到第一张图片
} else {
NSLog(@"Failed to create the image.");
} });
}
}];
}
failureBlock:^(NSError *error) {
NSLog(@"Failed to enumerate the asset groups.");
}];
});
//保存图片到相册的两种方法
- (void)saveImageToPhotos:(UIImage*)savedImage
{
//第一种保存图片
UIImageWriteToSavedPhotosAlbum(savedImage,self, @selector(image:didFinishSavingWithError:contextInfo:),NULL);
// 第二种保存图片 ALAssetsLibrary
// NSString *imageURL = nil;
// ALAssetsLibrary *assetsLibrary = [[ALAssetsLibrary alloc] init];
// ALAssetsLibraryWriteImageCompletionBlock completeBlock = ^(NSURL *assetURL, NSError *error){
// if (!error) {
//#pragma mark get image url from camera capture.
// imageURL = [NSString stringWithFormat:@"%@",assetURL];
//
// }
// };
//
// if(savedImage){
//
// [assetsLibrary writeImageToSavedPhotosAlbum:[savedImage CGImage]
// orientation:(ALAssetOrientation)[savedImage imageOrientation]
// completionBlock:completeBlock];
// }
}
- (void)image: (UIImage *) image didFinishSavingWithError: (NSError *) error contextInfo: (void *) contextInfo
{
if(error){
//保存失败
}else{
//保存成功
}
}
- AssetsLibrary.framework
- IOS进阶之AssetsLibrary.framework
- AssetsLibrary
- AssetsLibrary
- IOS使用AssetsLibrary.Framework创建多图片选择控制器
- 使用AssetsLibrary.Framework创建多图片选择控制器(翻译)
- iOS开发------简单实现图片多选功能(AssetsLibrary.framework篇)
- AssetsLibrary 应用
- AssetsLibrary/AssetsLibrary.h 相册获取
- AssetsLibrary显示本地照片
- AssetsLibrary框架简单介绍
- AssetsLibrary使用介绍
- iOS资源库AssetsLibrary
- iOS<Photos/Photos.h>与<AssetsLibrary/AssetsLibrary.h>and 相机
- IOS AssetsLibrary框架的使用
- IOS AssetsLibrary框架的使用
- iOS开发AssetsLibrary的介绍
- iOS的AssetsLibrary框架访问所有相片
- 使用URLClassLoader动态加载类
- Python+Selenium前端页面测试自动化
- Android开发:Volley Request报错
- MapReduce排序程序
- Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
- AssetsLibrary.framework
- java socket编程
- StringTokenizer类的用法
- CSDN账号被盗用了
- Android之Handler用法总结
- struts2清除session的方法
- 删除.svn
- Oracle EBS环境下查找数据源
- 协方差