投票组件

 

版本历史

版本号更新时间更新描述
1.0.12022.5.7投票组件上线
   
   

 

1. 组件描述

投票组件是基于基础组件库扩展的投票组件服务,通过IM组件实现投票活动事件的实时推送,包括获取投票列表,获取投票详情、发送投票等功能,为业务方提供投票能力。投票组件包含管理器和基于管理器实现的UI界面,接入方可基于管理器对外API实现完全自定义UI的投票,也可直接集成组件SDK提供的UI。

 

2. 组件架构

2.1 组件架构图

image-20220506100931572

2.2 核心对外API

IVoteManager内部唯一实现类为VoteManagerImpl

作用API
初始化init(BaseVoteListener listener, String userId, String roomId, String interactToken)
发送投票sendVote(String activityId, List optionIdList, IBaseCallBack callBack)
获取投票列表getVoteList(IBaseCallBack<List> callBack)
获取投票详情getVoteDetail(String activityId, IBaseCallBack callBack)
重连reConnect()
释放release()

API接口代码

 

 

2.3 数据参数定义

数据类参数说明

 

3. 组件接入

3.1 使用组件提供UI

投票ViewGroup为VoteMainLayout

  1. 登录业务SDK(云直播等)

  2. xml中添加VoteMainLayout

  3. 设置VoteMainLayout的Listener

  4. 初始化组件

    1. 获取token-初始化投票需要传递参数token,可以通过业务SDK(云直播等)提供的对外API获取token

    2. 获取正在进行活动-如果需要进入时就展示互动组件,需要调用业务SDK提供的正在进行中组件活动API获取正在进行的活动

    3. 初始化组件-使用前两步获取的信息初始化组件SDK

      代码示例(以云直播为例):

  5. 销毁组件

 

3.2 使用组件管理器+自定义UI

投票管理器实现类为VoteManagerImpl,对外方法参照IVoteManager,UI可以参考VoteBaseLayout以及其子类VoteMainLayout实现

 

4. 混淆配置

混淆配置

 

5. 组件库依赖