如何使用 PHPhotoLibrary 获取照片的日期

Posted

技术标签:

【中文标题】如何使用 PHPhotoLibrary 获取照片的日期【英文标题】:How to get the date of a photo using PHPhotoLibrary 【发布时间】:2016-06-27 23:31:29 【问题描述】:

我正在尝试从 ALAssetsLibrary 转换为 phphotoLibrary,因为它已被弃用。我需要从照片库中选择一张照片中获取日期,但找不到正确的方法。这是我目前的做法。

mediaUrl = info[UIImagePickerControllerReferenceURL] as? NSURL

...

let assetsLibrary = ALAssetsLibrary()
assetsLibrary.assetForURL(mediaUrl, resultBlock:  (asset) -> Void in
    guard let asset = asset else  return 
    guard let date = asset.valueForProperty(ALAssetPropertyDate) as? NSDate else  return 
    let dateString = dateFormatter.stringFromDate(date)

    //---- use date string here

    )  (error) -> Void in
        print(error)
    

这是我到达的地方:

let photoLibrary = PHPhotoLibrary.sharedPhotoLibrary()
var photoAssetPlaceholder: PHObjectPlaceholder!
photoLibrary.performChanges(
    let request = PHAssetChangeRequest.creationRequestForAssetFromImage(image)
    photoAssetPlaceholder = request.placeholderForCreatedAsset
    , completionHandler:  success, error in
        if success 
            print (photoAssetPlaceholder)
            //How do I get date from PhotoAssetPlaceholder???
         else 
            print(error?.localizedDescription)
        

        )

我觉得我很接近。任何帮助将不胜感激!

【问题讨论】:

【参考方案1】:

代表照片和视频本身的模型对象的类型为PHAsset

PHAsset 包含元数据,例如资产的媒体类型及其创建日期。

【讨论】:

以上是关于如何使用 PHPhotoLibrary 获取照片的日期的主要内容,如果未能解决你的问题,请参考以下文章

PHPhotoLibrary 获取相册和照片信息

如何在 iOS9 中使用 PHPhotolibrary 将照片保存在带有元数据的相册中?

如何在 iOS/Swift 2 上使用 PHPhotoLibrary 保存具有自定义文件名的照片?

使用 PHPhotoLibrary 将照片添加到自定义文件夹还会将照片添加到相机胶卷

如何从 PHPhotoLibrary 获取图像的位置?

PHPhotoLibrary - 在没有或有一个确认警报的情况下覆盖一堆照片