【发布时间】:2017-09-28 05:01:37
【问题描述】:
我正在尝试使用 requestAVAsset 通过 UIActivityController 分享视频 PHAsset。这适用于消息传递,但不适用于 AirDrop,指示为“失败”。
PHCachingImageManager.default().requestAVAsset(forVideo: asset, options: nil, resultHandler:
{ (givenAsset, audioMix, info) in
let videoAsset = givenAsset as! AVURLAsset
let videoURL = videoAsset.url
DispatchQueue.main.async {
let activityViewController = UIActivityViewController(
activityItems: [videoURL],
applicationActivities: nil)
activityViewController.excludedActivityTypes = [UIActivityType.saveToCameraRoll]
if let popoverPresentationController = activityViewController.popoverPresentationController {
popoverPresentationController.barButtonItem = (sender)
}
self.present(activityViewController, animated: true, completion: nil)
}
})
这似乎正确地设置了 UIActivityController 并且只适用于某些活动:
- 消息传递 - ✔️工作,正确导出视频。
- AirDrop - ✖️显示“失败”
- Dropbox - ✖️显示正确的 Dropbox 视图,但显示“发生未知错误”
【问题讨论】:
标签: ios swift video uiactivityviewcontroller phasset