showLocalNotification method
Implementation
Future<void> showLocalNotification(RCIMIWMessage message) async {
// 仅在启用本地推送时执行
if (_enableLocalNotification) {
String targetId = message.targetId ?? '';
String content = '';
// 获取自定义信息
if (customInfoProvider != null) {
final customInfo =
await customInfoProvider!(message: message, conversation: null);
targetId = customInfo.name;
}
// 根据不同消息类型获取内容
if (message.conversationType == RCIMIWConversationType.private ||
message.conversationType == RCIMIWConversationType.group) {
if (message is RCIMIWTextMessage) {
content = message.text ?? '';
} else if (message.messageType == RCIMIWMessageType.image) {
content = '[图片消息]';
} else if (message.messageType == RCIMIWMessageType.voice) {
content = '[语音消息]';
} else if (message.messageType == RCIMIWMessageType.file) {
content = '[文件消息]';
} else {
content = '[新消息]';
}
// 显示本地通知
_showLocalNotification(targetId, content);
}
}
}