XGAssetPickerController 1.0.0

XGAssetPickerController 1.0.0

huxinguang 维护。



功能描述

XGAssetPickerController 是一款 iOS 相册选择器,支持图片、视频拍摄,以及多图片和多视频的混合选择和预览功能。支持 Gif 浏览(iOS 11+)。多个相册目录同一图片/视频可自动去重,并具有记录已选图片/视频的功能。

系统要求

该项目最低支持 iOS 8.0+

安装

CocoaPods

  1. Podfile 中添加 pod 'XGAssetPickerController'
  2. 执行 pod installpod update
  3. #import "XG_AssetPickerController.h"

使用方法

  1. 首先使用 [[XG_AssetPickerManager manager] handleAuthorizationWithCompletion:^(XG_AuthorizationStatus aStatus) { }; 检查是否获取相册权限,然后根据 XG_AuthorizationStatus 进行进一步处理

  2. 初始化 XG_AssetPickerOptions 对象用于配置选择器,maxAssetsCount 表示最大可选数量,videoPickable 表示是否可选视频,已选的图片或视频会保存在 pickedAssetModels 数组中。

  3. 使用初始化选择器 XG_AssetPickerController,然后 UINavigationController *nav = [[UINavigationController alloc]initWithRootViewController:photoPickerVc]; [self presentViewController:nav animated:YES completion:nil];

  4. 遵循 <XG_AssetPickerControllerDelegate> 协议,并实现协议方法: - (void)assetPickerController:(XG_AssetPickerController *)picker didFinishPickingAssets:(NSArray<XG_AssetModel *> *)assets;,选择结果在参数 assets 中。

    具体使用方法可参见示例 Demo

注意事项

  1. 如果运行崩溃,崩溃信息 log 为:此应用崩溃,因为它尝试在没有使用描述的情况下访问隐私敏感数据。应用的信息.plist 必须包含具有字符串值的 NSPhotoLibraryUsageDescription/NSCameraUsageDescription 键,解释应用如何使用这些数据。请检查 Info.plist 是否添加相册/相机权限: NSPhotoLibraryUsageDescription/NSCameraUsageDescription

  2. 模拟器环境下,虽然在工程的 Localizations 配置中添加了简体中文 Chinese(Simplified),但相册名称仍会默认为英文,这是正常的,因为 Localizations 在真机环境下才会生效(即真机环境下相册名称会显示成中文)。

许可证

XGAssetPickerController 使用 MIT 许可证,详情见 LICENSE 文件。



Introduction

XGAssetPickerController 是一个支持混合多图、多视频选择和预览的 iOS 照片库选择器。在 iOS 11.0+ 支持支持 Gif 浏览。可以自动检测同一图片或视频在不同相册中的情况,并记录选中的图片或视频。

Requirements

本库需要 iOS 8.0+

Installation

CocoaPods

  1. 在你的Podfile中添加pod 'XGAssetPickerController'
  2. 运行pod installpod update
  3. #import "XG_AssetPickerController.h"

手动

  1. 下载Picker子目录下的所有文件。
  2. 将源文件添加到你的Xcode项目中。
  3. #import "XG_AssetPickerController.h".

用法

  1. 使用[[XG_AssetPickerManager manager] handleAuthorizationWithCompletion:^(XG_AuthorizationStatus aStatus) { }];检查你是否可以访问照片库。
  2. 初始化一个XG_AssetPickerOptions对象来配置XG_AssetPickerController
  3. 使用initWithOptions: delegate:方法初始化一个XG_AssetPickerController,并使用UINavigationController *nav = [[UINavigationController alloc]initWithRootViewController:photoPickerVc]; [self presentViewController:nav animated:YES completion:nil];显示它。
  4. 采用XG_AssetPickerControllerDelegate协议并实现它的所需方法assetPickerController: didFinishPickingAssets:

注意

如果你的应用崩溃,显示的消息类似于此应用崩溃,因为它尝试在未提供使用描述的情况下访问隐私敏感数据。应用的外部配置文件(Info.plist)必须包含一个NSPhotoLibraryUsageDescription/NSCameraUsageDescription键,其字符串值解释应用如何使用此数据。,请检查应用的外部配置文件(Info.plist)中是否已添加相应的使用描述。

许可

XGAssetPickerController提供在MIT许可下。有关详细信息,请参阅LICENSE文件。