ios - 快速访问存储在另一个文件夹中的文件
问题描述
我正在创建一个应用程序,您可以在其中录制视频或图像。您可以自己录制视频或图像,也可以从 UIImagePicker 中选择。视频/图像列在集合视图中。当您在集合视图中的一行上单击时,它会显示图像或视频。
我不明白的一件事是,如果我录制视频以保护它,它会显示在收藏视图中,但是当我选择之前录制的视频时,我只看到灰色背景而不是实际视频。
如果我从图库中选择一个视频,它会显示并播放。
这就是我显示视频的方式
player = AVPlayer(url: arrayOfVideoUrls[i]!)
print(arrayOfVideoUrls[i]!)
playerLayer = AVPlayerLayer(player: player)
playerLayer?.frame = view.frame
view.layer.addSublayer(playerLayer!)
player?.play()
我的猜测是,我无法打开视频,因为它保存在另一个文件夹中。
这是我自己录制的视频的文件夹:
file:///private/var/mobile/Containers/Data/Application/E0EBF7F9-713C-451B-B764-D2056ECC6E48/tmp/7834C1AF-1417-4389-B455-92DA52DFF93F.mov
这是画廊中视频的文件夹:
file:///private/var/mobile/Containers/Data/PluginKitPlugin/1A977F99-6C5C-40F7-933D-E325D8E967E4/tmp/trim.31B4A909-E8FA-4CBE-B64F-30646A6366B3.MOV
解决方案
每次保存录制的视频时都需要提供路径,保存后需要检查该路径是否包含文件。并且请确保,每当您录制新视频时,您给您的录制文件指定不同的名称。并且要播放该视频,请在路径中附加视频名称。
推荐阅读
- javascript - 如何防止反应日期选择器在按钮单击时发生变化?
- c# - 从另一个私有方法访问私有方法中的变量。C#
- excel - 将 Word 文档中的图像复制到 Excel 单元格中
- algorithm - 如何求解递归关系 T(n)=T(n/3)+T(n/6)+1
- python - 如何只保留 3 位数字?
- reactjs - 如何在 react-grid-layout 中呈现自定义占位符
- typescript - 当我使用 Typescript 进行投射时,为什么 Prettier 会添加这个分号?
- sqlalchemy - SQLAlchemy 执行的“SELECT CAST('test plain returns' AS VARCHAR(60)) AS anon_1”的目的是什么?
- javascript - 我正在使用 window.location.replace 需要时间来呈现响应?
- android - 向下滚动在移动环境中不起作用