预缓存
该功能主要目标是在用户开始播放视频前就可以将视频预先缓存至本地。
预缓存能更快加速开播,推荐短视频列表播放中使用该功能。
一、功能说明
- 不支持的情况 不支持HLS的预缓存功能
- 特殊逻辑 由预缓存发起的下载任务,只能由预缓存接口关闭。 播放器关闭播放,并不会中断下载行为。
二、基本接口
SDK提供两个API, 建议调用startPreDownload开始预缓存之后应调用stopPreDownload停止预缓存
/**
* 开启视频预加载, 需要在{@link #startServer()}之后调用
* @param url 视频真实播放地址
*/
public void startPreDownload(String url)
/**
* 停止视频预加载, 需要在{@link #startServer()}之后调用
* @param url 视频真实播放地址
*/
public void stopPreDownload(String url)
三、使用示例
private ProxyService proxyService;
private String url = "http://xxx.com/test.mp4";
// 设置错误监听器
proxyService.registerErrorListener(mOnErrorListener);
// 设置最大缓存size为1GB
proxyService.setMaxCacheSize(1024*1024*1024);
proxyService.startServer();
// 设置缓存状态监听器
proxyService.registerCacheStatusListener(mCacheStatusListener, url);
// 开始预缓存
proxyService.startPreDownload(url);
// ...
// 停止预缓存
proxyService.stopPreDownload();