从过时的UIimagePickerController中选择照片,PHAsset已过时,获取图像创建时间?

时间:2019-04-15 07:17:11

标签: swift uiimage uiimagepickercontroller phasset

   import Photos

   public func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
        if let image = info[UIImagePickerController.InfoKey.originalImage?] as? UIImage {
            newImage = image
            let asset = info[UIImagePickerController.InfoKey.phAsset] as! PHAsset
            imageCreationDate = asset.creationDate
            print (imageCreationDate)
            self.dismiss(animated: false, completion: {self.performSegue(withIdentifier: "showImageSubmit", sender: self)})
        }
    }

当用户选择要上传到我的应用程序中的图像时,我想记录该图像的创建时间戳。我也想获取图像的位置,但是大多数人都将其关闭,这似乎更加复杂,但是眼前的任务是获取必须存在的时间戳,如果没有其他原因,图像是由该图像排序的。

在我上面提供的代码中,我认为这是从所选图像的信息中获取PHAsset然后读取创建日期的正确方法。谁能指出我要去哪里了。

此代码失败,并显示

  

“致命错误:在展开Optional时意外发现nil   值”。

我知道我可以做一个if,以防止发生该错误,但是更重要的是,为什么不让我获得资产对象,以便获得创建时间戳。在弄糊涂之前,我做了一些谷歌搜索,有些帖子建议我可能需要提示首先获取照片库权限?

任何建议将不胜感激。

0 个答案:

没有答案