Swift 5 从本地缓存播放视频

时间:2021-03-07 00:45:08

标签: swift caching video avplayer

我正在尝试减少应用的数据消耗。这就是为什么我在我的 tableviewCells 中为视频实现了以下缓存

https://stackoverflow.com/a/45062989/7186851

到目前为止它有效,我可以检查视频是否在我的缓存中,但我无法从本地缓存中播放

缓存的视频路径看起来像这样

file:/Users/Dev1/Library/Developer/CoreSimulator/Devices/86AFC4DE-CA7F-4AA4-97EE-0FB17173D5A4/data/Containers/Data/Application/697F3F33-A87A-4CDD-A1D0-D124A8CA5593/Library/Caches/-MV8TA8hReegG2OIUyy0 -- file:///

尝试在 AVPlayer 中播放视频时,它不起作用。

            CacheManager.shared.getFileWith(stringUrl: vUrl) { result in

                switch result {
                case .success(let newUrl):
                    uri = URL(fileURLWithPath: newUrl.absoluteString)
                   // let url = URL(string: uri)
                    print(uri)
                    self.player = AVPlayer(url: uri)
                    self.playerLayer = AVPlayerLayer(player: self.player)
                    self.playerLayer?.frame = self.postImageView.frame
                    self.contentView.layer.addSublayer(self.playerLayer!)
                case .failure(_):
                    uri = URL(string: vUrl)
                }
            }

我之后开始播放视频。当我从 cloudStorage 下载视频时,它运行良好,但无法播放缓存的视频。

有什么建议吗? 如果有帮助,我有一个与 tiktok/instagram&fb 类似的视频提要。

0 个答案:

没有答案
相关问题