iOS 9将gif保存到照片库

时间:2016-05-02 18:50:15

标签: ios swift camera-roll

现在{@ 1}}已被弃用,我们应该使用照片框架,特别是AssetsLibrary将图片和视频保存到用户相机胶卷。

使用ReactiveCocoa,这样的请求看起来像:

PHPhotoLibrary

我使用Regift从视频创建了一个gif,我可以验证我的临时目录中是否存在gif。然而,当我将gif保存到相机胶卷时,我收到一个神秘的错误:func saveImageAsAsset(url: NSURL) -> SignalProducer<String, NSError> { return SignalProducer { observer, disposable in var imageIdentifier: String? PHPhotoLibrary.sharedPhotoLibrary().performChanges({ let changeRequest = PHAssetChangeRequest.creationRequestForAssetFromImageAtFileURL(url) let placeholder = changeRequest?.placeholderForCreatedAsset imageIdentifier = placeholder?.localIdentifier }, completionHandler: { success, error in if let identifier = imageIdentifier where success { observer.sendNext(identifier) } else if let error = error { observer.sendFailed(error) return } observer.sendCompleted() }) } } ,这真的非常有帮助。

有没有人遇到过这个问题?

1 个答案:

答案 0 :(得分:0)

你可以试试这个。

let data = try? Data(contentsOf: /*Your-File-URL-Path*/)
PHPhotoLibrary.shared().performChanges({
    PHAssetCreationRequest.forAsset().addResource(with: .photo, data: data!, options: nil)
})