SwiftMediaContentHandler 1.0.6

SwiftMediaContentHandler 1.0.6

测试已测试
Lang语言 SwiftSwift
许可证 自定义
发布最新发布2017年5月
SwiftSwift版本3.0
SPM支持SPM

Hai Pham维护。



 
依赖项
SDWebImage/WebP>= 0
SwiftUtilities/Main>= 0
 

  • Hai Pham

SwiftMediaContentHandler

PHPhotoLibrary的媒体内容处理器。基于RxSwift。

这个库提供了两个主要的方便的类,它们抽象了iOS开发中处理媒体获取所需的大部分工作

MediaHandler

此类提供从多个来源加载各种类型媒体的方法。例如,要从PHAsset加载图像,指定一个类型为LocalImageRequest的请求,如下所示

LocalImageRequest.builder().with(media:).with(size:).build()

然后将它传递给MediaHandler实例,如下所示

MediaHandler().rxRequest(request:)

LocalMediaDatabase

此类提供了一个方便的Observable,用于加载本地的PHAsset实例。简单地将类型(.image,.audio,.video)和媒体集合类型(.album,.smartAlbum,.moment)逐一或作为一个数组提供给它,订阅到LocalMediaDatabase.mediaObservable,并调用LocalMediaDatabase.loadInitialAlbums()以开始接收更新。如果PHPhotoLibrary权限尚未得到授权,它将自动要求用户这样做。

例如

let mediaDatabase = LocalMediaDatabase.builder() .add(mediaTypes: .image, .audio, .video) .add(collectionTypes: .album, .smartAlbum, .moment) .build()

然后订阅到监听器observable

mediaDatabase.mediaObservable.subscribe()

最后,加载初始相册并设置更改观察器

mediaDatabase.loadInitialAlbums()

如果在此阶段权限被拒绝,则会抛出一个错误。

安装

此库需要CocoaPods。请使用

pod 'SwiftMediaContentHandler'

为适当的构建目标。

演示

请访问TestApplication-iOS [https://github.com/protoman92/TestApplication-iOS.git]进行快速演示(特别是GalleryController)。