ios - 使用 CameraManager 和 Swift 将捕获的视频保存到 iOS 库
问题描述
我在一个 Swift 项目中导入了CameraManager,以便在我的应用程序中轻松捕获视频。但我不确定如何按照以下代码将捕获的视频导出到我的 iOS 文件夹:
cameraManager.stopVideoRecording({ (videoURL, error) -> Void in
NSFileManager.defaultManager().copyItemAtURL(videoURL, toURL:
self.myVideoURL, error: &error)
})
在 Swift 4 中,我需要这个更新的代码:
cameraManager.stopVideoRecording({ (videoURL, error) -> Void in
FileManager.default.copyItem(at: videoURL, to: self.videoURL)
})
我想我需要改变这个值,但是......
self.videoURL
如果有人可以帮忙!
非常感谢
解决方案
CameraManager 不提供任何开箱即用的 API 来将视频保存到 iOS 库(截至最新版本 4.3.0)。
但是,一旦拍摄了视频 - 它会提供视频文件的 URL,我们可以使用 Apple 的Photos
API 轻松将该视频保存到库中。
PHPhotoLibrary.shared().performChanges({
PHAssetChangeRequest.creationRequestForAssetFromVideo(atFileURL: self.videoURL)
}) { saved, error in
if saved {
// Video saved successfully
}
}
不要忘记导入Photos
并添加Privacy - Photo Library Usage Description
到您的info.plist
可以从 SO答案中找到更多信息
推荐阅读
- python - 如何在 tkinter 中的行之间创建空格?
- python - 在两条交叉线上绘制圆圈
- ruby - 更新到 v2 后 Jekyll 中的分页错误
- php - dompdf 没有从 Laravel 8 和 Livewire 视图下载 PDF
- python - Python 环境总是在导入库后立即终止
- php - PHP getbyhostname 域代码在我的网络服务器上不起作用
- python - Pygame Zero 中的角色移动
- java - 访问其他活动后返回时如何防止活动重新加载?
- python - 从python中的列表中删除自定义单词
- visual-studio - 如何在 EF Core 中启用运行时脚手架