使用EXIF数据

时间:2017-08-24 22:48:35

标签: ios swift dji-sdk

我正在iOS中使用DJISDK从飞机上下载图片。

我正在使用downloadSelectedFiles类中的PlaybackManager方法。

这是我的流程回调:

process: { (data, error) in
    if data != nil{
        if self.downloadedImageData != nil{
            self.downloadedImageData!.append(data!)
        }else{
            self.downloadedImageData = data!
        }

    }
}

这是filecompletition回调:

fileCompletion: {
    self.downloadedFilesCount += 1
    let image = UIImage(data: self.downloadedImageData!)
    if let img = image {
        self.downloadedImagesArray?.append(img)
    }
    self.downloadedImageData = nil         
}

我正确检索图像但没有EXIF数据。如何获取该信息并将其添加到图像中? 我已经下载并尝试了iOS-MediaManagerDemo并且它是相同的,下载图像但没有exif数据,但官方DJI Go应用程序检索所有信息,所以必须有一些方法来做它。

1 个答案:

答案 0 :(得分:4)

还有关于空元数据和downloadSelectedFilesWithPreparation的{​​{3}}。创建帖子的用户 还找到了解决方案:

  

我通过不将NSData转换为任何格式而不是直接保存NSData来解决了这个问题。使用PHAssets和临时文件将NSData存储为PHAssets只接受来自URL的数据。

尝试使用similar issue in their forums(在Swift中称为fetchFileData(with:updateQueue:updateBlock)

  

[...]获取媒体数据将返回视频或图像的所有数据


 示例代码(objc):fetchFileDataWithOffset:updateQueue:updateBlock