语音消息
语音消息是即时 通讯应用中常用的功能,使用户能够通过录制语音来快速表达想法,比文字输入更加便捷。本文档介绍如何在Flutter IMKit中使用语音消息功能。
功能效果
语音消息功能包括录制语音、发送语音消息和播放语音消息。IMKit提供了完整的UI组件和相关逻辑处理。

使用方法
发送语音消息
Flutter IMKit 提供了 VoiceRecordProvider
用于管理语音录制的状态和逻辑,并内置了语音录制按钮组件。
默认情况下,语音消息图标显示在输入字段的左侧。点击此图标后,就会出现录制按钮(“按住说话”)。用户可以通过点击录制按钮来录制语音消息。
长度必须至少为一秒且短于 60 秒钟。如果在点击停止按钮之前消息不到一秒,则不会保存该消息。录制过程中可以上滑取消录制或放弃取消。
一旦松开按钮,SDK 默认发送到目前为止录制的内容。不支持在发送语音消息之前预览。在播放语音消息中的音频文件时不可暂停。
查看语音消息
Flutter IMKit 为语音消息提供了专门的气泡组件,展示语音时长并支持播放功能。
3. 语音录制状态管理
RCKVoiceRecordProvider
管理语音录制的状态和操作,您可以使用 context 获取并调用接口。
4. 配置语音输入按钮
Flutter IMKit 允许您自定义语音输入按钮的外观和行为:
Dart
// 在消息输入配置中
InputConfig(
// 启用语音输入
enableVoiceInput: true,
// 语音按钮图标
voiceInputIcon: Icon(Icons.mic, color: Colors.grey),
// 录音按钮文本
recordButtonText: '按住 说话',
// 松开发送文本
recordReleaseText: '松开 发送',
// 滑动取消文本
recordCancelText: '滑动取消',
// 录音按钮颜色
recordButtonColor: Colors.blue[100],
// 录音中按钮颜色
recordingButtonColor: Colors.blue,
// 最大录音时长(秒)
maxRecordDuration: 60,
)
通过以上方法,您可以在 Flutter IMKit 中实现完整的语音消息功能,为用户提供便捷的语音交流体验。