diff --git a/CHANGELOG.md b/CHANGELOG.md index def669f..a644afd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -97,4 +97,6 @@ ### 1.4.8 * fix: Upgrade send message api ### 1.4.9 - * fix: Upgrade save channel member extra data api \ No newline at end of file + * fix: Upgrade save channel member extra data api + ### 1.4.9 + * fix: Upgrade send noPersist message \ No newline at end of file diff --git a/lib/manager/message_manager.dart b/lib/manager/message_manager.dart index 572a7b5..758a76b 100644 --- a/lib/manager/message_manager.dart +++ b/lib/manager/message_manager.dart @@ -572,9 +572,7 @@ class WKMessageManager { wkMsg.channelType = channel.channelType; wkMsg.fromUID = WKIM.shared.options.uid!; wkMsg.contentType = messageContent.contentType; - int tempOrderSeq = await MessageDB.shared - .queryMaxOrderSeq(wkMsg.channelID, wkMsg.channelType); - wkMsg.orderSeq = tempOrderSeq + 1; + wkMsg.content = _getSendPayload(wkMsg); wkMsg.setChannelInfo(channel); WKChannel? from = await WKIM.shared.channelManager @@ -582,18 +580,24 @@ class WKMessageManager { if (from != null) { wkMsg.setFrom(from); } - int row = await saveMsg(wkMsg); - wkMsg.clientSeq = row; - WKIM.shared.messageManager.setOnMsgInserted(wkMsg); - if (row > 0) { - WKUIConversationMsg? uiMsg = - await WKIM.shared.conversationManager.saveWithLiMMsg(wkMsg, 0); - if (uiMsg != null) { - List uiMsgs = []; - uiMsgs.add(uiMsg); - WKIM.shared.conversationManager.setRefreshUIMsgs(uiMsgs); + if (!options.header.noPersist) { + int tempOrderSeq = await MessageDB.shared + .queryMaxOrderSeq(wkMsg.channelID, wkMsg.channelType); + wkMsg.orderSeq = tempOrderSeq + 1; + int row = await saveMsg(wkMsg); + wkMsg.clientSeq = row; + if (row > 0) { + WKUIConversationMsg? uiMsg = + await WKIM.shared.conversationManager.saveWithLiMMsg(wkMsg, 0); + WKIM.shared.messageManager.setOnMsgInserted(wkMsg); + if (uiMsg != null) { + List uiMsgs = []; + uiMsgs.add(uiMsg); + WKIM.shared.conversationManager.setRefreshUIMsgs(uiMsgs); + } } } + if (wkMsg.messageContent is WKMediaMessageContent) { // 附件消息 if (_uploadAttachmentBack != null) { diff --git a/pubspec.yaml b/pubspec.yaml index 279c67f..33ed0b0 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -15,7 +15,7 @@ description: wukong IM flutter sdk # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html # In Windows, build-name is used as the major, minor, and patch parts # of the product and file versions while build-number is used as the build suffix. -version: 1.4.9 +version: 1.5.0 homepage: https://github.com/WuKongIM/WuKongIMFlutterSDK environment: