fix: Optimization of loading channel messages without the latest messages and multiple synchronization issues

This commit is contained in:
SL 2024-02-28 15:55:47 +08:00
parent 6459f2ed7e
commit e57a9a505c
6 changed files with 21 additions and 8 deletions

View File

@ -61,4 +61,6 @@
### 1.3.0 ### 1.3.0
* Modification of sending messages containing replies error * Modification of sending messages containing replies error
### 1.3.1 ### 1.3.1
* fix: synchronization channel message multiple synchronization issue * fix: synchronization channel message multiple synchronization issue
### 1.3.2
* fix: Optimization of loading channel messages without the latest messages and multiple synchronization issues

View File

@ -9,7 +9,7 @@
#### 安装 #### 安装
``` ```
dependencies: dependencies:
wukongimfluttersdk: ^1.3.1 wukongimfluttersdk: ^1.3.2
``` ```
#### 引入 #### 引入
```dart ```dart

View File

@ -140,7 +140,7 @@ class ChatListDataState extends State<ChatList> {
getMsgList(int oldestOrderSeq, int pullMode, bool isReset) { getMsgList(int oldestOrderSeq, int pullMode, bool isReset) {
WKIM.shared.messageManager.getOrSyncHistoryMessages(channelID, channelType, WKIM.shared.messageManager.getOrSyncHistoryMessages(channelID, channelType,
oldestOrderSeq, oldestOrderSeq == 0, pullMode, 20, 0, (list) { oldestOrderSeq, oldestOrderSeq == 0, pullMode, 10, 0, (list) {
List<UIMsg> uiList = []; List<UIMsg> uiList = [];
for (int i = 0; i < list.length; i++) { for (int i = 0; i < list.length; i++) {
if (pullMode == 0 && !isReset) { if (pullMode == 0 && !isReset) {

View File

@ -320,7 +320,6 @@ class MessageDB {
// //
List<WKMsg> list = await getMessages( List<WKMsg> list = await getMessages(
channelId, channelType, oldestOrderSeq, contain, pullMode, limit); channelId, channelType, oldestOrderSeq, contain, pullMode, limit);
print("查询总数量${list.length}");
// //
List<WKMsg> tempList = []; List<WKMsg> tempList = [];
for (int i = 0, size = list.length; i < size; i++) { for (int i = 0, size = list.length; i < size; i++) {
@ -360,6 +359,10 @@ class MessageDB {
} else { } else {
oldestMsgSeq = oldestOrderSeq ~/ 1000; oldestMsgSeq = oldestOrderSeq ~/ 1000;
} }
if (oldestMsgSeq == 1) {
iGetOrSyncHistoryMsgBack(list);
return;
}
if (pullMode == 0) { if (pullMode == 0) {
// //
if (maxMessageSeq != 0 && if (maxMessageSeq != 0 &&

View File

@ -389,6 +389,14 @@ packages:
url: "https://pub.flutter-io.cn" url: "https://pub.flutter-io.cn"
source: hosted source: hosted
version: "1.10.0" version: "1.10.0"
sprintf:
dependency: transitive
description:
name: sprintf
sha256: "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23"
url: "https://pub.flutter-io.cn"
source: hosted
version: "7.0.0"
sqflite: sqflite:
dependency: "direct main" dependency: "direct main"
description: description:
@ -465,10 +473,10 @@ packages:
dependency: "direct main" dependency: "direct main"
description: description:
name: uuid name: uuid
sha256: "648e103079f7c64a36dc7d39369cabb358d377078a051d6ae2ad3aa539519313" sha256: cd210a09f7c18cbe5a02511718e0334de6559871052c90a90c0cca46a4aa81c8
url: "https://pub.flutter-io.cn" url: "https://pub.flutter-io.cn"
source: hosted source: hosted
version: "3.0.7" version: "4.3.3"
vector_math: vector_math:
dependency: transitive dependency: transitive
description: description:

View File

@ -15,7 +15,7 @@ description: wukong IM flutter sdk
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html # 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 # 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. # of the product and file versions while build-number is used as the build suffix.
version: 1.3.1 version: 1.3.2
homepage: https://github.com/WuKongIM/WuKongIMFlutterSDK homepage: https://github.com/WuKongIM/WuKongIMFlutterSDK
environment: environment:
@ -41,7 +41,7 @@ dependencies:
encryptions: ^1.1.0+1 encryptions: ^1.1.0+1
hex: ^0.2.0 hex: ^0.2.0
crypto: ^3.0.3 crypto: ^3.0.3
uuid: ^3.0.7 uuid: ^4.3.3
web_socket_channel: ^2.4.0 web_socket_channel: ^2.4.0
dio: ^5.3.2 dio: ^5.3.2
encryptor: ^0.0.1 encryptor: ^0.0.1