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

标签 ios swift instagram phasset photosframework

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

但是我正在将我的图像作为 PHAsset 获取(不是 ALAsset 所有其他答案似乎都涵盖了这个主题)。

查看 PHAsset 文档,我没有看到“本地目录”变量。

你知道我如何使用新的 ios8 照片框架从用户相机胶卷中获取照片的路径吗?

这是我加载用户照片卷中最后一张图片的代码

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.requestContentEditingInput(with: PHContentEditingInputRequestOptions()) { (input, _) in
        let url = input.fullSizeImageURL
}

确保 Assets 是 PHAssetMediaType.Image 否则它可能会在解包可选时崩溃。

关于ios - 获取 PHAsset 的本地文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28327824/

相关文章:

swift - 让容器 View 上的按钮对不相关的容器 View 执行操作

ios - 使用全屏图像和导航查看链接

ios - InstagramKit (ios) 登录验证问题

iphone - 如何知道 iOS 中是否没有 admob?

ios - 在单元格 TableView 中设置最大字符数

ios - CoreStore transaction.edit 建议使用相同变量名的注释可以防止我们误用非事务实例

instagram - 如何以全尺寸查看 instagram 个人资料图片?

iphone - 图片无法从 iOS 6 发布到 Instagram

ios - XCUITest - 如何模拟设备的锁定

ios - 如何将 ipa 文件部署到 artifactory?