产品动态
公告

接入方式 | 含 UI 集成 | 无 UI 集成 (AtomicXCore-SDK) |
方式说明 | 为您集成视频直播/语音聊天室场景的所有功能,也提供了该场景下一系列 UI 组件。您可以自行选择您需要的组件进行接入。 | 无 UI 集成为您提供无 UI 集成方案,对 UI 开发提供了友好的支持。您只需专注于 UI 界面开发,即可高效地构建功能完备、可完全自定义的实时互动应用。 |
适应场景 | 当您想自己实现 UI 不想用我们提供的 UI 时,可以使用此方式接入。 | |
接入文档 | 视频直播 语聊房 推流助手 直播监播 接入弹幕消息组件 接入直播礼物组件 接入美颜特效 接入观众列表 | 快速接入 |
支持平台 | Android、iOS、Flutter、Web、Electron | Android、iOS、Flutter、Web、Electron |
接入方式 | 配置方式 |
含 UI 集成 | |
无 UI 集成(AtomicXCore-SDK) |
弹幕消息发送组件 | 弹幕消息展示组件 |
![]() | ![]() |
送礼面板 | 礼物通知(侧滑动效) | 礼物通知(弹幕消息) | 全屏礼物动画 |
![]() | ![]() | ![]() | ![]() |
接入方式 | 配置方式 |
含 UI 集成 | 包含 UI,接入完成可直接使用,无需额外配置。 如仅接入视频直播/语音聊天室核心组件: 视频直播场景:参见 视频组件 > 单人连麦 进行接入。 语聊房场景:参见 语聊组件 进行麦位管理。 |
无 UI 集成(AtomicXCore-SDK) |
接入方式 | 配置方式 |
视频直播/语聊房 | |
无 UI 集成(AtomicXCore-SDK) |
message.data 设置为您从您的业务后台获取到的需要展示的等级/身份信息。使用 onRecvNewMessage 收到消息时,解析 data 为对应用户的等级/身份信息,之后自行在弹幕上进行渲染。具体收发消息代码展示如下:// 发送消息V2TIMMessage v2TIMMessage = V2TIMManager.getMessageManager().createTextMessage("text");String jsonString = "{\\"level\\":\\"25\\",\\"identity\\":\\"normal\\"}"; // 在这里写入从您业务后台获取到的等级/身份信息v2TIMMessage.setCloudCustomData(jsonString);V2TIMManager.getMessageManager().sendMessage(v2TIMMessage, null, roomId, V2TIMMessage.V2TIM_PRIORITY_LOW,true, null, new V2TIMSendCallback<V2TIMMessage>() {// ...});// 接收消息AdvancedMsgListener listener = new AdvancedMsgListener();V2TIMManager.getMessageManager().addAdvancedMsgListener(listener);private class AdvancedMsgListener extends V2TIMAdvancedMsgListener {@Overridepublic void onRecvNewMessage(V2TIMMessage msg) {Gson gson = new Gson();Type type = new TypeToken<HashMap<String, Object>>() {}.getType();// 在这里解析自定义数据后渲染到弹幕上HashMap<String, Object> customData = gson.fromJson(msg.getCloudCustomData(), type);}}
import ImSDK_Plus// 发送消息let v2TimMessage = imManager.createTextMessage(text: "text")let jsonString = "{\\"level\\":\\"25\\",\\"identity\\":\\"normal\\"}" // 在这里写入从您业务后台获取到的等级/身份信息let data = jsonString.data(using: .utf8)v2TimMessage?.cloudCustomData = dataV2TIMManager.sharedInstance().sendMessage(message: v2TimMessage, receiver: nil,groupID: roomId, priority: .PRIORITY_LOW,onlineUserOnly: true, offlinePushInfo: nil, progress: nil) {} fail: { code, message in}// 接收消息V2TIMManager.sharedInstance().addAdvancedMsgListener(listener: self)extension YourClass: V2TIMAdvancedMsgListener {func onRecvNewMessage(msg: V2TIMMessage) {if let jsonObject = try? JSONSerialization.jsonObject(with: msg.cloudCustomData ?? Data(), options: []),let dict = jsonObject as? [String: Any] {// 在这里解析自定义数据后渲染到弹幕上}}}
接入方式 | 配置方式 |
含 UI 集成 | 包含 UI,接入完成可直接使用,无需额外配置。可从观众列表和弹幕组件2个位置选择相应用户进行封禁/踢人。 禁言接口:disableSendMessage 踢人接口:kickUserOutOfRoom |
无 UI 集成(AtomicXCore-SDK) | 禁言参考 管理用户发言 实现。 踢人参考 将观众踢出直播间 实现。 |
接入方式 | 配置方式 |
含 UI 集成 | 包含 UI,接入完成可直接使用,无需额外配置。 |
无 UI 集成(AtomicXCore-SDK) | 可以通过监听 LiveAudienceState 中的 audienceCount 实时得到当前直播间人数。也可以通过监听 onAudienceJoined/onAudienceLeft 来自行维护在线人数。 |
服务端 REST API |
双列瀑布流 | 单列瀑布流 |
![]() |
![]() |

Notice 字段作为房间公告,设置或更新后,会通过通知告知房间内的所有用户。接入方式 | 配置方式 |
含 UI 集成 | 主播端:添加主播推流页面 时,设置 liveInfo.notice为您所需要的直播间公告。观众端:参考下方无 UI 集成中的内容进行实现。 |
无 UI 集成(AtomicXCore-SDK) | 主播端: 开播设置直播间公告:开播调用 LiveListStore中的 createLive 接口时,传入的LiveInfo中设置notice字段为您的直播间公告。更新直播间公告:开播后,调用 LiveListStore中的 updateLiveInfo 接口修改直播间公告。观众端: 直播间信息公告更新时,通过监听 LiveListState 中的 currentLive 字段来获取更新后的直播间公告。 |
服务端 REST API |
接入方式 | 配置方式 |
含 UI 集成 | 包含 UI,接入完成可直接使用,主播在结束直播后将自动展示直播统计数据,无需额外配置。如仅接入视频直播核心组件,在结束直播时调用 LiveCoreView 中带有 TUIStopLiveBlock 回调的 stopLive 接口,该回调中带有本场直播的统计信息 TUILiveStatisticsData。 |
无 UI 集成(AtomicXCore-SDK) |

接入方式 | 配置方式 |
含 UI 集成 | 主播 建议在 主播页面 上添加商品弹窗 UI。主播页面代码位置如下: 观众 建议在 观众观看页面 上添加商品弹窗 UI。观众观看页面代码位置如下: |
无 UI 集成(AtomicXCore-SDK) | 在收到自定义消息并解析为商品相关信息后,在您的主播页面/观众观看页面 UI 的最上层,添加商品弹窗的 View 即可。 |

文档反馈