从云直播播放SDK 4.6.0版本开始,提供单独的文档模块,用户可选择性接入文档模块,也可使用原来文档逻辑。
依赖
xxxxxxxxxx
implementation 'com.bokecc.doc:docsdk:4.6.0'
SDK API
IDocManager
API | 描述 |
---|---|
prepare() | 文档模块准备,调用必须保证业务组件已经登录完成 |
release() | 文档模块释放,云直播已在业务内部调用,无需手动调用 |
getDocView() | 获取view,在prepare之后调用,返回当前需要显示在视图上的view,有可能为null |
IDocView
API | 描述 |
---|---|
setScaleType(ScaleType scaleType) | 设置文档缩放模式 |
setBackgroundColor(String color) | 设置文档背景颜色 |
setFitWidth(boolean fitWidth) | 设置文档是否适配屏幕宽度 |
setDocModeType(SwitchType switchType) | 设置文档翻页模式 |
setScrollable(boolean scrollable) | 设置文档滚动模式 |
getView() | 获取View对象,注意判空 |
setDocViewListener(DocViewEventListener docViewListener) | 设置Doc回调监听 |
接入方式
登录直播业务(直播、回放、离线回放)
创建IDocManager
xxxxxxxxxx
docManager = new DocManagerFactory().create(mContext, new IDocManagerListener() {
public void onPrepared() {
}
public void onError(DocErrorCode code, String msg) {
}
public void onPageInfoList(ArrayList<ReplayPageInfo> infoList) {
//(>=v4.7.0)回放使用 文档翻页数据回调, 直播不会回调
}
public void onMetaDataLoadSuccess() {
//(>=v4.7.0)回放使用 文档数据下载完成回调, 直播不会回调
}
}, DWLive.getInstance());
准备
xxxxxxxxxx
docManager.prepare();
获取View,添加到视图树
xxxxxxxxxx
if (docManager.getDocView() != null) {
docView = docManager.getDocView();
View view = docView.getView();
if (view != null) {
LayoutParams params = new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
view.setLayoutParams(params);
addView(view);
}
docView.setScrollable(false);
docView.setBackgroundColor("#ffffff");
docView.setDocViewListener(this);
}
调用直播业务开始播放