iOSALAssetsLibrary的基本使用

需要导入这个库

奉化ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!

#import<AssetsLibrary/AssetsLibrary.h>

//ALAssetsLibrary这个类是系统的资源库,可以用它来访问图片,视频,资源等功能

    

   //返回照片数据授权该应用程序状态

    int author = [ALAssetsLibrary authorizationStatus];

  //typedef NS_ENUM(NSInteger, ALAuthorizationStatus) {

   //ALAuthorizationStatusNotDetermined  0

   //用户尚未选择关于这个应用程序

   //ALAuthorizationStatusRestricted 1

   //这个应用程序未被授权访问图片数据。

   //ALAuthorizationStatusDenied 2

   //用户已经明确否认了这个应用程序访问图片数据。

   // ALAuthorizationStatusAuthorized 3

   //授权此应用程序访问数据照片。

    

   //禁用检索和共享照片流的通知

    [ALAssetsLibrary disableSharedPhotoStreamsSupport];

    

    

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

   //创建一个相册到相册资源中,并通过block返回创建成功的相册ALAssetsGroup

   //addAssetsGroupAlbumWithName相册的名字

    [assetsLibrary addAssetsGroupAlbumWithName:@"photo" resultBlock:^(ALAssetsGroup *group) {

       //ALAssetsGroupPropertyName; //查看相册存储的名字

       //ALAssetsGroupPropertyType; //查看相册存储的类型

       //ALAssetsGroupPropertyPersistentID; //查看相册的存储的ID

       //ALAssetsGroupPropertyURLNSURL;   //查看相册的存储的地址

        NSLog(@"%@",[group valueForProperty:ALAssetsGroupPropertyName]);

    } failureBlock:^(NSError *error) {

        NSLog(@"%@",error);

    }];

    

   //获取相册资源中相片或视频的基本信息  assetForURL图片或视频的地址

    [assetsLibrary assetForURL:nil resultBlock:^(ALAsset *asset) {

        NSLog(@"%@",asset);

      //ALAssetPropertyType      类型

      //ALAssetPropertyLocation  查看资源的地理位置信息

      //ALAssetPropertyDuration  如果资源是视频,查看视频的时长

      //ALAssetPropertyOrientation  资源的旋转方向

      //ALAssetPropertyDate         时间

      //ALAssetPropertyRepresentations  描述信息

      //ALAssetPropertyURLs         路径

      //ALAssetPropertyAssetURL  资源的地址

      //ALAssetTypePhoto    照片

      //ALAssetTypeVideo    视频

      //ALAssetTypeUnknown  不知道类型

    } failureBlock:^(NSError *error) {

        NSLog(@"%@",error);

    }];

    

    

   //通过url地址获取相册资源中的一个相册

    [assetsLibrary groupForURL:nil resultBlock:^(ALAssetsGroup *group) {

        NSLog(@"%@",group);

       //ALAssetsGroupPropertyName 名字

       //ALAssetsGroupPropertyType  类型

       //ALAssetsGroupPropertyPersistentID 存储的id

       //ALAssetsGroupPropertyURL     存储的地址

    } failureBlock:^(NSError *error) {

        NSLog(@"%@",error);

    }];

   //保存图片到系统默认的相册中,使用CGImageRef的形式,并返回照片的url地址

    [assetsLibrary writeImageToSavedPhotosAlbum:nil metadata:nil completionBlock:^(NSURL *assetURL, NSError *error) {

    }];

    

   //保存图片到系统默认的相册中,使用NSData的形式,并返回照片的url地址

    [assetsLibrary writeImageDataToSavedPhotosAlbum:nil metadata:nil completionBlock:^(NSURL *assetURL, NSError *error) {

    }];

    

   //保存图片到系统默认的相册中,使用NSURL的形式,并返回照片的url地址

    [assetsLibrary writeVideoAtPathToSavedPhotosAlbum:nil completionBlock:^(NSURL *assetURL, NSError *error) {

    }];

    

    

   //ALAssetOrientationUp            default orientation

   //ALAssetOrientationDown          180 deg rotation

   //ALAssetOrientationLeft          90 deg CCW

   //ALAssetOrientationRight         90 deg CW

   //ALAssetOrientationUpMirrored    as above but p_w_picpath mirrored along other axis. horizontal flip

   //ALAssetOrientationDownMirrored  horizontal flip

   //ALAssetOrientationLeftMirrored  vertical flip

   //ALAssetOrientationRightMirrored vertical flip

    

   //保存图片到系统默认的相册中,使用CGImageRef的形式和图片的方向,并返回照片的url地址

    [assetsLibrary writeImageToSavedPhotosAlbum:nil orientation:ALAssetOrientationUp completionBlock:^(NSURL *assetURL, NSError *error) {

    }];

    

   //ALAssetsGroupLibrary      资源

   //ALAssetsGroupAlbum        所有专辑从iTunes或同步到设备上。

   //ALAssetsGroupEvent        iTunes同步的事件

   //ALAssetsGroupFaces        iTunes同步的专辑

   //ALAssetsGroupSavedPhotos   保存的照片专辑。

   //ALAssetsGroupPhotoStream  所有的图片的组

   //ALAssetsGroupAll          所有的图片

   //获取相册图片

    [assetsLibrary enumerateGroupsWithTypes:ALAssetsGroupAll usingBlock:^(ALAssetsGroup *group, BOOL *stop) {

        if(group){

            [group enumerateAssetsUsingBlock:^(ALAsset *result, NSUInteger index, BOOL *stop) {

                if(result){

                    

                    

                    //获取资源图片的详细资源信息

                    ALAssetRepresentation *representation =[result defaultRepresentation];

                    [_libaryPotoArry addObject:[UIImage p_w_picpathWithCGImage:representation.fullResolutionImage]];

                    //图片的长宽

                   CGSize dimension = [representationdimensions];

                   //图片的高清图

                    [representationfullResolutionImage];

                   //图片的全屏图

                    [representationfullScreenImage];

                   //图片的名字

                   NSString* filename = [representationfilename];

                   //缩放倍数

                    [representationscale];

                   //容量大小

                    [representationsize];

                   //原数据

                    [representation metadata];

                    //旋转方向

                    [representation orientation];

                   //资源图片url地址,该地址和ALAsset通过ALAssetPropertyAssetURL获取的url地址是一样的

                   NSURL* url = [representationurl];

                   //资源图片uti,唯一标示符

                   NSLog(@"uti:%@",[representationUTI]);

                   

                }

            }];

        }

        

    } failureBlock:^(NSError *error) {

        NSLog(@"%@",error);

    }];

分享名称:iOSALAssetsLibrary的基本使用
网页网址:https://www.cdcxhl.com/article44/igcghe.html

成都网站建设公司_创新互联,为您提供网页设计公司网站内链网站排名网站建设微信公众号面包屑导航

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

搜索引擎优化