跳到主要内容

语音消息

用户可以通过 Global IM UIKit 内置的输入组件录制并发送语音消息。消息将出现在会话页面的消息列表组件中。SDK 默认生成和发送的消息包含高清语音消息内容对象 HQVoiceMessage(类型标识:RC:HQVcMsg)。

hqvoice-message(width=250)

局限性

语音输入功能目前存在以下限制:

  • Global IM UIKit 仅单聊会话和群聊会话支持发送语音消息。
  • 用户必须录制至少为 1 秒的音频内容,且必须短于 60 秒钟。
  • 用户在录制语音消息时无法暂停。

用法

在输入栏组件中默认启用语音消息输入功能,长按语音按钮录制语音,松开发送。

发送语音消息

消息列表中,语音消息会展示分贝、时长等信息,用户可以通过点击播放按钮查看和播放语音消息,消息可多次播放。当语音消息第一次展示时,会自动下载语音文件,并在本地缓存语音文件。

语音分贝

在录音时,会将声音的分贝信息记录下来,随高清语音消息一起发送。分贝信息会以 JSON 格式转换成字符串放在 HQVoiceMessage 的 extra 中,格式如下:

{
"HQVoicePowers": "level,level,level,level,..."
}

定制化

语音消息的定制化涉及到输入栏的录音按钮图标、录音事件、语音消息展示 UI。

自定义语音消息的 UI

SDK 默认生成和发送高清语音消息(RC:HQVoiceMsg),使用 HQVoiceMessageItemProvider 模板展示在消息列表中。

所有消息展示模板都继承自 BaseMessageItemProvider<CustomMessage>,您可以继承 BaseMessageItemProvider<CustomMessage>,自行实现一个高清语音消息展示模板类,并将该自定义模板提供给 SDK。