iOS 9使用PHPhotoLibrary和Swift 2使用自定义文件名保存照片

Bif*_*ter 5 filenames photo swift ios9

我正在尝试使用带有.addResourceWithType和Swift 2的iOS 9 PHAssetCreationRequest使用自定义文件名保存照片。它可以保存照片,但未使用我在PHAssetResourceCreationOptions选项中指定的文件名。我想使用自定义文件名,因为我需要在照片中存储一个自定义字符串,该字符串指示照片的“类型”。目前,我正在将“类型”及其localIdentifier存储在Core Data存储中,但是,如果卸载了该应用程序,Core Data存储也会被存储,因此我正在寻找照片中保留的其他方法。这是我正在使用的代码:

var assetPlaceholder:PHObjectPlaceholder!
PHPhotoLibrary.sharedPhotoLibrary().performChanges({
    if #available(iOS 9.0, *) {
        let options = PHAssetResourceCreationOptions()
        options.originalFilename = frameType + "_" + origFilename
        let newcreation:PHAssetCreationRequest = PHAssetCreationRequest.creationRequestForAsset()
        newcreation.addResourceWithType(PHAssetResourceType.Photo, data:UIImageJPEGRepresentation(image, 1)!, options: options)
        assetPlaceholder = newcreation.placeholderForCreatedAsset
    } else { // < ios 9
        // Fallback on earlier versions
        let assetChangeRequest = PHAssetChangeRequest.creationRequestForAssetFromImage(image)    
        assetPlaceholder = assetChangeRequest.placeholderForCreatedAsset      
    }
    let albumChangeRequest = PHAssetCollectionChangeRequest(forAssetCollection: assetCollection)
    albumChangeRequest!.addAssets([assetPlaceholder])
}, completionHandler: {(success:Bool, error:NSError?) in
Run Code Online (Sandbox Code Playgroud)