5_5-手机开播场景-聊天室

1 功能概述

聊天室模块包括发言、麦克风控制、摄像头控制等功能。聊天室模块在UI、交互、功能上,相较于其他模块,都会更复杂更庞大。因此设计、搭建、维护一个聊天室,也是一件较为费时费力的事情。我们推荐直接使用保利威封装好的聊天室模块,该部分代码完全开源,支持直接使用,以及二次开发。

2 使用演示

聊天室在手机开播场景中对应的实现布局为PLVLSChatroomLayout,以下示例了如何创建聊天室布局以及初始化,代码如下:

// 聊天室布局
private IPLVLSChatroomLayout plvlsChatroomLy;
// findView
plvlsChatroomLy = findViewById(R.id.plvls_chatroom_ly);
// 初始化聊天室布局
plvlsChatroomLy.init(liveRoomDataManager);

上述方法的使用用例可以在polyv demo项目中的PLVLSLiveStreamerActivity找到。

3 接口介绍

手机开播场景下,针对聊天室布局进行封装的接口。定义了:

1、外部直接调用的方法 2、需要外部响应的事件监听器

4、实现介绍

4.1 PLVLSChatroomLayout

该类是手机开播场景下的聊天室布局,实现IPLVLSChatroomLayout接口。

该布局包含聊天信息列表、发送信息输入框、聊天室工具栏布局等相关的UI。

下面会列举介绍该布局中涉及到的主要的方法。

4.1.1 初始化view方法

PLVLSChatroomLayout继承于FrameLayout,在构造器中使用initView方法对view进行了初始化处理。

4.1.2 初始化数据方法

PLVLSChatroomLayoutinit方法是对外API,需要外部传入IPLVLiveRoomDataManager后进行初始化。

这里的PLVChatroomPresenter是使用mvp模式封装的聊天室presenter,用presenterviewmode隔离开来,一切业务逻辑都是通过presenter来进行操作,也就是说presenter是视图的数据的桥梁,视图和数据相隔两端。

Last updated

Was this helpful?