我在我的应用程序中使用OkHttp下载视频。要播放视频,我需要完全下载它,然后使用File对象播放它。
我无法找到从OkHttp中的底层DiskLruCache获取File对象的好方法。现在我使用响应体的InputStream来管理另一个DiskLruCache中的响应,以便接收一个File对象并播放它。
我认为拥有多个DiskLruCaches并不是一个好主意。有没有什么好方法可以从OkHttp中的缓存响应中获取File对象?
答案 0 :(得分:1)
你不能,反正也不应该。问题是OkHttp的磁盘缓存可能会在您使用它们时逐出文件。它没有任何机制来将文件固定用于其他目的以外的目的。
相反,您需要手动管理这些下载的生命周期:存储的数量,删除时间等等。