系统相册图片路径获取以及反取图片

    dispatch_async(dispatch_get_main_queue(), ^{

        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

        

        

        ALAssetsLibraryAccessFailureBlock failureblock = ^(NSError *myerror){

            NSLog(@"相册访问失败 =%@", [myerror localizedDescription]);

            if ([myerror.localizedDescription rangeOfString:@"Global denied access"].location!=NSNotFound) {

                NSLog(@"无法访问相册.请在'设置->定位服务'设置为打开状态.");

            }else{

                NSLog(@"相册访问失败.");

            }

        };

        

        ALAssetsGroupEnumerationResultsBlock groupEnumerAtion = ^(ALAsset *result, NSUInteger index, BOOL *stop){

            if (result!=NULL) {

                

                if ([[result valueForProperty:ALAssetPropertyType] isEqualToString:ALAssetTypePhoto]) {

                    

                    NSString *urlstr=[NSString stringWithFormat:@"%@",result.defaultRepresentation.url];//图片的url

                    NSLog(@"urlstr=%@",urlstr);

                    /*result.defaultRepresentation.fullScreenImage//图片的大图

                     result.thumbnail                             //图片的缩略图小图

                     //                    NSRange range1=[urlstr rangeOfString:@"id="];

                     //                    NSString *resultName=[urlstr substringFromIndex:range1.location+3];

                     //                    resultName=[resultName stringByReplacingOccurrencesOfString:@"&ext=" withString:@"."];//格式demo:XXXX.png

                     */

                    

                    //                    [self._dataArray addObject:urlstr];

                }

            }

            

        };

        ALAssetsLibraryGroupsEnumerationResultsBlock

        libraryGroupsEnumeration = ^(ALAssetsGroup* group, BOOL* stop){

            

            if (group == nil)

            {

                

            }

            

            if (group!=nil) {

                NSString *g=[NSString stringWithFormat:@"%@",group];//获取相簿的组

                NSLog(@"gg:%@",g);//gg:ALAssetsGroup - Name:Camera Roll, Type:Saved Photos, Assets count:71

                

                NSString *g1=[g substringFromIndex:16 ] ;

                NSArray *arr=[[NSArray alloc] init];

                arr=[g1 componentsSeparatedByString:@","];

                NSString *g2=[[arr objectAtIndex:0] substringFromIndex:5];

                if ([g2 isEqualToString:@"Camera Roll"]) {

                    g2=@"相机胶卷";

                }

                NSString *groupName=g2;//组的name

                NSLog(@"groupname=%@",groupName);

                [group enumerateAssetsUsingBlock:groupEnumerAtion];

            }

            

        };

        

        ALAssetsLibrary* library = [[ALAssetsLibrary alloc] init];

        [library enumerateGroupsWithTypes:ALAssetsGroupAll

                               usingBlock:libraryGroupsEnumeration

                             failureBlock:failureblock];

        [library release];

        [pool release];

    });

    

    

    ------------------------根据图片的url反取图片-----

    //

    ALAssetsLibrary *assetLibrary=[[ALAssetsLibrary alloc] init];

    NSURL *url=[NSURL URLWithString:@"assets-library://asset/asset.JPG?id=EFCB4A55-1072-4DC9-93F8-85BA32583C0A&ext=JPG"];

    [assetLibrary assetForURL:url resultBlock:^(ALAsset *asset)  {

        UIImage *image=[UIImage imageWithCGImage:asset.thumbnail];

        //    cellImageView.image=image;

        NSLog(@"Imge=%@",image);

        

    }failureBlock:^(NSError *error) {

        NSLog(@"error=%@",error);

    }

     ];

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值