ios – 获取PHAsset的本地文件路径

我有一张照片,我希望我的用户能够在Instagram上分享,我需要获取照片的本地文件目录.

但是,我将图像作为PHAsset获取(而不是ALAsset,所有其他答案似乎涵盖了这个主题).

看看PHAsset文档,我看不到一个’本地目录’变量.

您是否知道如何使用新的ios8 Photo框架从用户相机胶卷获取照片的路径?

这是我的代码,用于加载用户照片卷中的最后一个图像

public func loadLastPhotoIntogalleryIcon()
{
    if(PHPhotoLibrary.authorizationStatus() != PHAuthorizationStatus.Authorized)
    {
        return
    }
    var fetchOptions:PHFetchOptions = PHFetchOptions()
    fetchOptions.sortDescriptors = [NSSortDescriptor(key: "creationDate",ascending: false)]
    var fetchResult:PHFetchResult = PHAsset.fetchAssetsWithMediaType(PHAssetMediaType.Image,options: fetchOptions)

    var lastAsset:PHAsset = fetchResult.firstObject as PHAsset

    var options:PHImageRequestOptions = PHImageRequestOptions()
    options.version = PHImageRequestOptionsversion.Current
    PHImageManager.defaultManager().requestimageForAsset(lastAsset,targetSize: _view.getgalleryIconSize(),contentMode: PHImageContentMode.AspectFill,options: options)
    {
        (result,objects) -> Void in
        self._view.setgalleryIcon(result)
    }

}

解决方法

使用内容编辑输入:
asset.requestContentEditingInputWithOptions(PHContentEditingInputRequestOptions()) { (input,_) in
    let url = input.fullSizeImageURL
}

确保资产是PHAssetMediaType.Image,否则可能会在解包可选时崩溃.

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...