大班课学生端API接口
引入头文件
import com.qxc.androidplayskd.QXCPlayBackSDKHelper;
调用进入直播回放接口,并传入必要参数
// context 当前上下文 // token 加密信息 // name 用户名 QXCPlayParams qxcPlayParams = new QXCPlayParamsBuilder() .token(token) // token鉴权 .name(name) // 用户名字,不参与验证,随意填写 .isShowWaterMark(true) // 如不设置,系统默认显示 .waterMarkValue("水印信息") // 如不设置,系统默认显示userid .build(); QXCPlayBackSDKHelper.enterPlayBackClass(context, qxcPlayParams);
回放下载
千学云提供了回放的下载、暂停、删除等功能的相应接口,可以根据自己的业务需求选择接入
导入头文件
import com.qxc.androiddownloadsdk.QXCClassDownloadHelper; import com.qxc.androiddownloadsdk.QXCDownLoadListener;
下载直播回放
下载回放监听接口介绍
public interface QXCDownLoadListener { /** * 下载开始 * @param id 课程id * @param exParams 外部额外参数 */ void onStart(String id, Object exParams); /** * 下载进度, 单位B * @param id 课程id * @param exParams 外部额外参数 * @param totalSize 课程总大小 * @param finishSize 当前下载完成大小 */ void onProgress(String id, Object exParams, long totalSize, long finishSize); /** * 下载停止 * @param id 课程id */ void onPause(String id, Object exParams); /** * 下载错误 * @param id 课程id * @param exParams 外部额外参数 * @param errorCode 错误类型,详见一下表格 * @param e 错误对象 */ void onError(String id, Object exParams, int errorCode, Exception e); /** * 下载完成 * @param id 课程id * @param exParams 外部额外参数 * @param totalSize 课程总大小 */ void onFinished(String id, Object exParams, long totalSize); /** * // 每秒实时下载字节大小 单位B * @param id 课程id * @param exParams 外部额外参数 * @param speed */ void onSpeed(String id, Object exParams, long speed); }
构建下载对象
Context context; String classId; Object exParams; // 外部额外参数 String path ; String token; QXCClassDownloadHelper qxcClassDownloadHelper = new QXCClassDownloadHelper.Builder() .with(context) .id(classId) .exParams(params) .path(path) .token(token) .listener(qxcDownLoadListener) .build();
- 执行下载
qxcClassDownloadHelper.startDownLoad();
- 暂停下载
qxcClassDownloadHelper.pauseDownLoad();
- 删除下载
// 如果qxcClassDownloadHelper对象有,直接调用如下删除 // 异步删除,有回调方式 qxcClassDownloadHelper.deleteDownLoad(new OnDeleteListener() { @Override public void success() { // 删除完成 } @Override public void error(String id, Object exParams, int code, Exception e) { // 删除失败 } }); // 同步删除,无回调方式 // delResult 返回值是1 删除成功,其他其删除失败 int delResult = qxcClassDownloadHelper.deleteDownLoadSync(); // 如果qxcClassDownloadHelper没有时,直接调用如下删除 // 异步删除,有回调方式 QXCDeleterDownLoaderBuilder qxcDeleterDownLoaderBuilder = new QXCDeleterDownLoaderBuilder() .id(downId) // 下载时传的downid .path("下载路径") .listener(new OnDeleteListener() { @Override public void success(String s, Object o) { // 删除成功 } @Override public void error(String s, Object o, int i, String s1) { // 删除失败 } }); QXCDeleteDownloadHepler.deleteDownLoad(qxcDeleterDownLoaderBuilder); // 同步删除 QXCDeleterDownLoaderBuilder qxcDeleterDownLoaderBuilder = new QXCDeleterDownLoaderBuilder() .id(downId) // 下载时传的downid .path("下载路径"); // delResult 返回值是1 删除成功,其他删除失败 int delResult QXCDeleteDownloadHepler.deleteDownLoadSync(qxcDeleterDownLoaderBuilder)
- 相关说明
构建下载对象字段说明:
字段名 | 类型 | 说明 |
---|---|---|
context | Context | Android上下文 |
classId | String | 直播ID,外部可用的唯一标识, 可以不需要传,如果传,回调的id就是改classId |
exParams | Object | 外部额外参数,需要则传,不需要可以不传 |
token | String | 下载直播回放的鉴权参数 |
path | String | 下载存放路径 |
错误类型说明:
错误编码 | 说明 |
---|---|
0 | 未知错误 |
1001 | 下载链接断开 |
2001 | 下载文件错误 |
3001 | 文件资源错误 |
3002 | 获取下载描述文件失败 |
3003 | 获取下载媒体列表文件失败 |
4001 | 连续10秒无下载速度 |
5001 | 没有足够的空间 |
进入缓存完成的回放
进入缓存完成的回放传入参数和进入回放类似,只是调用
enterCachePlayBackClass
接口来进入回放// Activity上下文 Context context; // 课程id String id; //也可以是token // 播放本地路径, 改路径对应下载的路径,需要保持一致 String path; // 回放标题 String title; QXCPlayParams qxcPlayParams = new QXCPlayParamsBuilder() .token(id) .isShowWaterMark(true) // 如不设置,系统默认显示 .waterMarkValue("水印信息") // 如不设置,系统默认显示userid .title(title) .path(path) .build(); // 进入缓存有两种情况,第一是下载时候传递的id,如果没有传递id,那么可以传递token QXCPlayBackSDKHelper.enterCachePlayBackClass(context, qxcPlayParams);