3_4-云课堂场景-连麦
1 功能概述
保利威云课堂sdk支持连麦功能,举手连麦、音频连麦、视频连麦可自由选择,并支持多人连麦,丰富课堂内容。
连麦流程:讲师端发起连麦->学员举手申请连麦->讲师端允许学员连麦->学员正式加入连麦。
2 使用演示
详细的调用代码以及和其他模块的通信,请参考PLVLCCloudClassActivity类中的代码调用。
3 接口介绍
3.1 IPLVLCLinkMicControlBar
云课堂场景下,针对 连麦控制条布局 进行封装的 Interface ,在[PLVLinkMicLayout]中被使用,用于将最新的连麦状态更新到控制条。 定义了:
外部直接调用的方法
需要外部响应的事件监听器
3.2 IPLVLCLinkMicLayout
云课堂场景下,针对 连麦布局 进行封装的 Interface。 定义了:
云课堂使用的连麦布局接口
需要外部响应的事件监听器
4 实现介绍
IPLVLCLinkMicControlBar的实现类是PLVLCLinkMicControlBar。
IPLVLCLinkMicLayout的实现类是PLVLCLinkMicLayout。
4.1 PLVLCLinkMicControlBar
PLVLCLinkMicControlBar是连麦控制条的实现。有如下几点需要注意:
连麦控制条在Activity中被创建,并作为参数传递到
PLVLCLinkMicLayout中,由连麦布局响应控制条的点击事件以及刷新连麦控制条的UI状态。在竖屏和横屏上分别用两套View来实现竖屏和横屏的UI。
主要的逻辑集中在动画、点击事件响应、和横竖屏两套UI保持同步。
4.2 PLVLCLinkMicLayout
连麦布局是连麦功能模块的主体,主要的UI是连麦列表。且横竖屏共用同一套连麦列表对象。
4.2.1 初始化View
在初始化时,要初始化连麦列表RecyclerView和连麦列表用到的适配器PLVLinkMicListAdapter。
4.2.2 初始化数据
数据的初始化在对外API方法中:
由于连麦功能模块使用了mvp模式,因此首先初始化了Presenter。
此外,还初始化了连麦控制条,对连麦控制条的点击事件进行了监听。
连麦布局的主体逻辑主要集中在mvp模式的View层接口的实现中,可以参考该接口的注释和实现:
5 子目录介绍
5.1 adapter目录
PLVLinkMicListAdapter
连麦列表RecyclerView的适配器,该类中对具体的每个连麦Item做了处理,并暴露了连麦Item的点击事件。
5.2 service目录
PLVLCLinkMicForegroundService
在连麦时开启前台服务来确保在后台连麦时,连麦功能正常。
5.3 widget目录
这是连麦模块的自定义View目录
PLVLCLinkMicRingButton
连麦话筒按钮
PLVLinkMicRvLandscapeItemDecoration
横屏连麦列表的ItemDecoration
Last updated
Was this helpful?