Android VideoCache视频缓存的方法详解

时间:2021-05-21

Android VideoCache视频缓存的方法详解

项目中遇到视频播放,需要加载网络url,不可能每次都进行网络加载,当然了,就需要用到我们的缓存机制

AndroidVideoCache

AndroidVideoCache是一个视频/音频缓存库,利用本地代理实现了边下边播,使用起来非常简单。

HttpProxyCacheServer是主要类,是一个代理服务器,可以配置缓存文件的数量、缓存文件的大小、缓存文件的目录和缓存文件命名算法,文件缓存均基于LRU算法,利用Builder来配置:

//配置缓存目录public Builder cacheDirectory(File file);//配置缓存文件命名规则public Builder fileNameGenerator(FileNameGenerator fileNameGenerator) ;//配置缓存文件大小public Builder maxCacheSize(long maxSize) ;//配置缓存文件数量public Builder maxCacheFilesCount(int count) ;

建议以单列模式将HttpProxyCacheServer存放于Application中:

public class App extends Application { private HttpProxyCacheServer proxy; public static HttpProxyCacheServer getProxy(Context context) { App app = (App) context.getApplicationContext(); return app.proxy == null ? (app.proxy = app.newProxy()) : app.proxy; } private HttpProxyCacheServer newProxy() { return new HttpProxyCacheServer(this); }}

调用十分方便,只需要增加一行代码:

@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState); HttpProxyCacheServer proxy = getProxy(); String proxyUrl = proxy.getProxyUrl(VIDEO_URL); videoView.setVideoPath(proxyUrl);}private HttpProxyCacheServer getProxy() { return App.getProxy(getApplicationContext());}

最后视频加载的 时候需要判断是否缓存,做一些比如缓冲进度条的隐藏等操作

以上就是Android VideoCache的使用方法详解,本站关于Android开发的文章还有很多,希望大家搜索查阅,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章