从PHPhotoLibrary创建的资产中获取URL

时间:2019-02-22 20:20:41

标签: swift video share orientation

我想从PHPhotoLibrary创建的视频资产中获取URL,以便与其他应用共享,而不是将视频保存到设备的相机胶卷中。现在,我可以用另一种方法来做,但是PHPhotoLibrary添加了一些额外的数据,使共享视频在所有应用之间的显示方向正确。我知道这是因为,当视频保存到我的相机胶卷中时,在查看照片和共享到其他应用程序时都显示正确。直接从我的应用共享时,我现在拥有的方式无法在所有应用之间正确显示。

我现在拥有的是:

let urlData = NSData(contentsOf: self.fileURL)

if urlData != nil {

    let paths:[String] = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)
    let docDirectory:String = paths[0]
    let filePath:String = "\(docDirectory)/tmpVideo.mp4"
    urlData?.write(toFile: filePath, atomically: true)

    let videoLink = NSURL(fileURLWithPath: filePath)
    let objectsToShare:[NSURL] = [videoLink]

    let activity: UIActivityViewController = UIActivityViewController(activityItems: objectsToShare, applicationActivities: nil)

    DispatchQueue.main.async {
        UIApplication.topViewController?.present(activity, animated: true, completion: nil)
    }

}

this post comes close除了位于Obj-C中而不是Swift之外,不同之处在于它仅使URL格式化为Instagram。我只想要像上面代码中的一般系统URL。

我已经重新格式化了链接中的代码,但是不确定如何使用localIdentifier或根本不需要它。

0 个答案:

没有答案