From e2d170e9f0caac01e3f3c698cde71ffac51b582f Mon Sep 17 00:00:00 2001 From: SL Date: Tue, 23 Apr 2024 16:50:27 +0800 Subject: [PATCH] fix:Optimize connections --- CHANGELOG.md | 4 +++- README.md | 2 +- lib/common/mode.dart | 1 + lib/manager/connect_manager.dart | 1 + lib/wkim.dart | 18 +++++++++++++----- pubspec.yaml | 2 +- 6 files changed, 20 insertions(+), 8 deletions(-) create mode 100644 lib/common/mode.dart diff --git a/CHANGELOG.md b/CHANGELOG.md index aac5fa0..d307cd6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -65,4 +65,6 @@ ### 1.3.2 * fix: Optimization of loading channel messages without the latest messages and multiple synchronization issues ### 1.3.3 - * fix: Optimization of loading channel messages without the latest messages and multiple synchronization issues \ No newline at end of file + * fix: Optimization of loading channel messages without the latest messages and multiple synchronization issues + ### 1.2.4 + * fix: Optimize connections \ No newline at end of file diff --git a/README.md b/README.md index d41c512..e964713 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ #### 安装 ``` dependencies: - wukongimfluttersdk: ^1.3.3 + wukongimfluttersdk: ^1.3.4 ``` #### 引入 ```dart diff --git a/lib/common/mode.dart b/lib/common/mode.dart new file mode 100644 index 0000000..a1d58d7 --- /dev/null +++ b/lib/common/mode.dart @@ -0,0 +1 @@ +enum Model { app, web } diff --git a/lib/manager/connect_manager.dart b/lib/manager/connect_manager.dart index b27715e..02f959b 100644 --- a/lib/manager/connect_manager.dart +++ b/lib/manager/connect_manager.dart @@ -112,6 +112,7 @@ class WKConnectionManager { return; } _isLogout = false; + disconnect(_isLogout); if (WKIM.shared.options.getAddr != null) { WKIM.shared.options.getAddr!((String addr) { _socketConnect(addr); diff --git a/lib/wkim.dart b/lib/wkim.dart index cb1ac83..19c0492 100644 --- a/lib/wkim.dart +++ b/lib/wkim.dart @@ -1,4 +1,5 @@ import 'package:wukongimfluttersdk/common/crypto_utils.dart'; +import 'package:wukongimfluttersdk/common/mode.dart'; import 'package:wukongimfluttersdk/db/wk_db_helper.dart'; import 'package:wukongimfluttersdk/manager/channel_manager.dart'; import 'package:wukongimfluttersdk/manager/channel_member_manager.dart'; @@ -22,18 +23,21 @@ class WKIM { static final WKIM _instance = WKIM._privateConstructor(); static WKIM get shared => _instance; - + Model runMode = Model.app; Options options = Options(); Future setup(Options opts) async { options = opts; CryptoUtils.init(); _initNormalMsgContent(); - bool result = await WKDBHelper.shared.init(); - if (result) { - messageManager.updateSendingMsgFail(); + if (isApp()) { + bool result = await WKDBHelper.shared.init(); + if (result) { + messageManager.updateSendingMsgFail(); + } + return result; } - return result; + return true; } _initNormalMsgContent() { @@ -68,6 +72,10 @@ class WKIM { deviceFlagApp = deviceFlag; } + bool isApp() { + return runMode == Model.app; + } + WKConnectionManager connectionManager = WKConnectionManager.shared; WKMessageManager messageManager = WKMessageManager.shared; WKConversationManager conversationManager = WKConversationManager.shared; diff --git a/pubspec.yaml b/pubspec.yaml index ebc8aa9..a66c994 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.3.3 +version: 1.3.4 homepage: https://github.com/WuKongIM/WuKongIMFlutterSDK environment: