mirror of
https://github.com/WuKongIM/WuKongIMFlutterSDK
synced 2025-05-30 23:47:26 +00:00
update connect
This commit is contained in:
parent
28c84355dd
commit
ab8abdfbbd
@ -7,8 +7,14 @@
|
|||||||
|
|
||||||
## 快速入门
|
## 快速入门
|
||||||
|
|
||||||
|
#### 安装
|
||||||
|
```
|
||||||
|
dependencies:
|
||||||
|
wukongimfluttersdk: ^1.0.1
|
||||||
|
```
|
||||||
|
#### 引入
|
||||||
```dart
|
```dart
|
||||||
|
import 'package:wukongimfluttersdk/wkim.dart';
|
||||||
```
|
```
|
||||||
|
|
||||||
**初始化sdk**
|
**初始化sdk**
|
||||||
|
@ -11,6 +11,9 @@ class ChatChannel {
|
|||||||
|
|
||||||
class CommonUtils {
|
class CommonUtils {
|
||||||
static String getAvatar(String channelID) {
|
static String getAvatar(String channelID) {
|
||||||
|
if (channelID == '') {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
return channelID.substring(0, 1);
|
return channelID.substring(0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -57,7 +57,7 @@ class LoginDemoState extends State<LoginDemo> {
|
|||||||
TextStyle(fontSize: 30, fontWeight: FontWeight.bold),
|
TextStyle(fontSize: 30, fontWeight: FontWeight.bold),
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
'悟空IM演示程序。当前SDK版本:V1.0.0',
|
'悟空IM演示程序。当前SDK版本:V1.0.1',
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
style:
|
style:
|
||||||
TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
|
TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
|
||||||
|
@ -499,7 +499,7 @@ packages:
|
|||||||
path: ".."
|
path: ".."
|
||||||
relative: true
|
relative: true
|
||||||
source: path
|
source: path
|
||||||
version: "1.0.0"
|
version: "1.0.1"
|
||||||
x25519:
|
x25519:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -78,11 +78,14 @@ class ChannelDB {
|
|||||||
List<Map<String, Object?>> list =
|
List<Map<String, Object?>> list =
|
||||||
await WKDBHelper.shared.getDB().rawQuery(sql);
|
await WKDBHelper.shared.getDB().rawQuery(sql);
|
||||||
if (list.isNotEmpty) {
|
if (list.isNotEmpty) {
|
||||||
String channelID = list[0]['channel_id']!.toString();
|
dynamic data = list[0];
|
||||||
|
if (data != null) {
|
||||||
|
String channelID = WKDBConst.readString(data, 'channel_id');
|
||||||
if (channelID != '' && channelID.isNotEmpty) {
|
if (channelID != '' && channelID.isNotEmpty) {
|
||||||
isExit = true;
|
isExit = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return isExit;
|
return isExit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ class ChannelMemberDB {
|
|||||||
await WKDBHelper.shared.getDB().rawQuery(sql);
|
await WKDBHelper.shared.getDB().rawQuery(sql);
|
||||||
if (results.isNotEmpty) {
|
if (results.isNotEmpty) {
|
||||||
dynamic data = results[0];
|
dynamic data = results[0];
|
||||||
version = data['version'];
|
version = WKDBConst.readInt(data, 'version');
|
||||||
}
|
}
|
||||||
return version;
|
return version;
|
||||||
}
|
}
|
||||||
|
@ -27,27 +27,27 @@ class WKDBConst {
|
|||||||
msg.messageID = readString(data, 'message_id');
|
msg.messageID = readString(data, 'message_id');
|
||||||
msg.messageSeq = readInt(data, 'message_seq');
|
msg.messageSeq = readInt(data, 'message_seq');
|
||||||
msg.clientSeq = readInt(data, 'client_seq');
|
msg.clientSeq = readInt(data, 'client_seq');
|
||||||
msg.timestamp = data['timestamp'];
|
msg.timestamp = readInt(data, 'timestamp');
|
||||||
msg.fromUID = data['from_uid'];
|
msg.fromUID = readString(data, ' from_uid');
|
||||||
msg.channelID = data['channel_id'];
|
msg.channelID = readString(data, 'channel_id');
|
||||||
msg.channelType = data['channel_type'];
|
msg.channelType = readInt(data, 'channel_type');
|
||||||
msg.contentType = data['type'];
|
msg.contentType = readInt(data, 'type');
|
||||||
msg.content = data['content'];
|
msg.content = readString(data, 'content');
|
||||||
msg.status = data['status'];
|
msg.status = readInt(data, 'status');
|
||||||
msg.voiceStatus = data['voice_status'];
|
msg.voiceStatus = readInt(data, 'voice_status');
|
||||||
msg.searchableWord = data['searchable_word'];
|
msg.searchableWord = readString(data, 'searchable_word');
|
||||||
msg.clientMsgNO = data['client_msg_no'];
|
msg.clientMsgNO = readString(data, 'client_msg_no');
|
||||||
msg.isDeleted = data['is_deleted'];
|
msg.isDeleted = readInt(data, 'is_deleted');
|
||||||
msg.orderSeq = data['order_seq'];
|
msg.orderSeq = readInt(data, 'order_seq');
|
||||||
int setting = data['setting'];
|
int setting = readInt(data, 'setting');
|
||||||
msg.setting = Setting().decode(setting);
|
msg.setting = Setting().decode(setting);
|
||||||
msg.viewed = data['viewed'];
|
msg.viewed = readInt(data, 'viewed');
|
||||||
msg.viewedAt = data['viewed_at'];
|
msg.viewedAt = readInt(data, 'viewed_at');
|
||||||
msg.topicID = data['topic_id'];
|
msg.topicID = readString(data, 'topic_id');
|
||||||
// 扩展表数据
|
// 扩展表数据
|
||||||
msg.wkMsgExtra = serializeMsgExtra(data);
|
msg.wkMsgExtra = serializeMsgExtra(data);
|
||||||
|
|
||||||
String extra = data['extra'];
|
String extra = readString(data, 'extra');
|
||||||
if (extra != '') {
|
if (extra != '') {
|
||||||
msg.localExtraMap = jsonEncode(extra);
|
msg.localExtraMap = jsonEncode(extra);
|
||||||
}
|
}
|
||||||
@ -85,32 +85,32 @@ class WKDBConst {
|
|||||||
|
|
||||||
static WKMsgReaction serializeMsgReation(dynamic data) {
|
static WKMsgReaction serializeMsgReation(dynamic data) {
|
||||||
WKMsgReaction reaction = WKMsgReaction();
|
WKMsgReaction reaction = WKMsgReaction();
|
||||||
reaction.channelID = data['channel_id'];
|
reaction.channelID = readString(data, 'channel_id');
|
||||||
reaction.channelType = data['channel_type'];
|
reaction.channelType = readInt(data, 'channel_type');
|
||||||
reaction.isDeleted = data['is_deleted'];
|
reaction.isDeleted = readInt(data, 'is_deleted');
|
||||||
reaction.uid = data['uid'];
|
reaction.uid = readString(data, 'uid');
|
||||||
reaction.name = data['name'];
|
reaction.name = readString(data, 'name');
|
||||||
reaction.messageID = data['message_id'];
|
reaction.messageID = readString(data, 'message_id');
|
||||||
reaction.createdAt = data['created_at'];
|
reaction.createdAt = readString(data, 'created_at');
|
||||||
reaction.seq = data['seq'];
|
reaction.seq = readInt(data, 'seq');
|
||||||
reaction.emoji = data['emoji'];
|
reaction.emoji = readString(data, 'emoji');
|
||||||
reaction.isDeleted = data['is_deleted'];
|
reaction.isDeleted = readInt(data, 'is_deleted');
|
||||||
return reaction;
|
return reaction;
|
||||||
}
|
}
|
||||||
|
|
||||||
static WKConversationMsg serializeCoversation(dynamic data) {
|
static WKConversationMsg serializeCoversation(dynamic data) {
|
||||||
WKConversationMsg msg = WKConversationMsg();
|
WKConversationMsg msg = WKConversationMsg();
|
||||||
msg.channelID = data['channel_id'];
|
msg.channelID = readString(data, 'channel_id');
|
||||||
msg.channelType = data['channel_type'];
|
msg.channelType = readInt(data, 'channel_type');
|
||||||
msg.lastMsgTimestamp = data['last_msg_timestamp'];
|
msg.lastMsgTimestamp = readInt(data, 'last_msg_timestamp');
|
||||||
msg.unreadCount = data['unread_count'];
|
msg.unreadCount = readInt(data, 'unread_count');
|
||||||
msg.isDeleted = data['is_deleted'];
|
msg.isDeleted = readInt(data, 'is_deleted');
|
||||||
msg.version = data['version'];
|
msg.version = readInt(data, 'version');
|
||||||
msg.lastClientMsgNO = data['last_client_msg_no'];
|
msg.lastClientMsgNO = readString(data, 'last_client_msg_no');
|
||||||
msg.lastMsgSeq = data['last_msg_seq'];
|
msg.lastMsgSeq = readInt(data, 'last_msg_seq');
|
||||||
msg.parentChannelID = data['parent_channel_id'];
|
msg.parentChannelID = readString(data, 'parent_channel_id');
|
||||||
msg.parentChannelType = data['parent_channel_type'];
|
msg.parentChannelType = readInt(data, 'parent_channel_type');
|
||||||
String extra = data['extra'];
|
String extra = readString(data, 'extra');
|
||||||
if (extra != '') {
|
if (extra != '') {
|
||||||
msg.localExtraMap = jsonDecode(extra);
|
msg.localExtraMap = jsonDecode(extra);
|
||||||
}
|
}
|
||||||
@ -129,44 +129,44 @@ class WKDBConst {
|
|||||||
extra.draftUpdatedAt = readInt(data, 'draft_updated_at');
|
extra.draftUpdatedAt = readInt(data, 'draft_updated_at');
|
||||||
extra.version = readInt(data, 'version');
|
extra.version = readInt(data, 'version');
|
||||||
if (data['extra_version'] != null) {
|
if (data['extra_version'] != null) {
|
||||||
extra.version = data['extra_version'];
|
extra.version = readInt(data, 'extra_version');
|
||||||
}
|
}
|
||||||
return extra;
|
return extra;
|
||||||
}
|
}
|
||||||
|
|
||||||
static WKChannel serializeChannel(dynamic data) {
|
static WKChannel serializeChannel(dynamic data) {
|
||||||
String channelID = data['channel_id'];
|
String channelID = readString(data, 'channel_id');
|
||||||
int channelType = data['channel_type'];
|
int channelType = readInt(data, 'channel_type');
|
||||||
WKChannel channel = WKChannel(channelID, channelType);
|
WKChannel channel = WKChannel(channelID, channelType);
|
||||||
channel.channelName = data['channel_name'];
|
channel.channelName = readString(data, 'channel_name');
|
||||||
channel.channelRemark = data['channel_remark'];
|
channel.channelRemark = readString(data, 'channel_remark');
|
||||||
channel.showNick = data['show_nick'];
|
channel.showNick = readInt(data, 'show_nick');
|
||||||
channel.top = data['top'];
|
channel.top = readInt(data, 'top');
|
||||||
channel.mute = data['mute'];
|
channel.mute = readInt(data, 'mute');
|
||||||
channel.isDeleted = data['is_deleted'];
|
channel.isDeleted = readInt(data, 'is_deleted');
|
||||||
channel.forbidden = data['forbidden'];
|
channel.forbidden = readInt(data, 'forbidden');
|
||||||
channel.status = data['status'];
|
channel.status = readInt(data, 'status');
|
||||||
channel.follow = data['follow'];
|
channel.follow = readInt(data, 'follow');
|
||||||
channel.invite = data['invite'];
|
channel.invite = readInt(data, 'invite');
|
||||||
channel.version = data['version'];
|
channel.version = readInt(data, 'version');
|
||||||
channel.avatar = data['avatar'];
|
channel.avatar = readString(data, 'avatar');
|
||||||
channel.online = data['online'];
|
channel.online = readInt(data, 'online');
|
||||||
channel.lastOffline = data['last_offline'];
|
channel.lastOffline = readInt(data, 'last_offline');
|
||||||
channel.category = data['category'];
|
channel.category = readString(data, 'category');
|
||||||
channel.receipt = data['receipt'];
|
channel.receipt = readInt(data, 'receipt');
|
||||||
channel.robot = data['robot'];
|
channel.robot = readInt(data, 'robot');
|
||||||
channel.username = data['username'];
|
channel.username = readString(data, 'username');
|
||||||
channel.avatarCacheKey = data['avatar_cache_key'];
|
channel.avatarCacheKey = readString(data, 'avatar_cache_key');
|
||||||
channel.deviceFlag = data['device_flag'];
|
channel.deviceFlag = readInt(data, 'device_flag');
|
||||||
channel.parentChannelID = data['parent_channel_id'];
|
channel.parentChannelID = readString(data, 'parent_channel_id');
|
||||||
channel.parentChannelType = data['parent_channel_type'];
|
channel.parentChannelType = readInt(data, 'parent_channel_type');
|
||||||
channel.createdAt = data['created_at'];
|
channel.createdAt = readString(data, 'created_at');
|
||||||
channel.updatedAt = data['updated_at'];
|
channel.updatedAt = readString(data, 'updated_at');
|
||||||
String remoteExtra = data['remote_extra'];
|
String remoteExtra = readString(data, 'remote_extra');
|
||||||
if (remoteExtra != '') {
|
if (remoteExtra != '') {
|
||||||
channel.remoteExtraMap = jsonDecode(remoteExtra);
|
channel.remoteExtraMap = jsonDecode(remoteExtra);
|
||||||
}
|
}
|
||||||
String localExtra = data['extra'];
|
String localExtra = readString(data, 'extra');
|
||||||
if (remoteExtra != '') {
|
if (remoteExtra != '') {
|
||||||
channel.localExtra = jsonDecode(localExtra);
|
channel.localExtra = jsonDecode(localExtra);
|
||||||
}
|
}
|
||||||
@ -175,21 +175,21 @@ class WKDBConst {
|
|||||||
|
|
||||||
static WKChannelMember serializeChannelMember(dynamic data) {
|
static WKChannelMember serializeChannelMember(dynamic data) {
|
||||||
WKChannelMember member = WKChannelMember();
|
WKChannelMember member = WKChannelMember();
|
||||||
member.status = data['status'];
|
member.status = readInt(data, 'status');
|
||||||
member.channelID = data['channel_id'];
|
member.channelID = readString(data, 'channel_id');
|
||||||
member.channelType = data['channel_type'];
|
member.channelType = readInt(data, 'channel_type');
|
||||||
member.memberUID = data['member_uid'];
|
member.memberUID = readString(data, 'member_uid');
|
||||||
member.memberName = data['member_name'];
|
member.memberName = readString(data, 'member_name');
|
||||||
member.memberAvatar = data['member_avatar'];
|
member.memberAvatar = readString(data, 'member_avatar');
|
||||||
member.memberRemark = data['member_remark'];
|
member.memberRemark = readString(data, 'member_remark');
|
||||||
member.role = data['role'];
|
member.role = readInt(data, 'role');
|
||||||
member.isDeleted = data['is_deleted'];
|
member.isDeleted = readInt(data, 'is_deleted');
|
||||||
member.version = data['version'];
|
member.version = readInt(data, 'version');
|
||||||
member.createdAt = data['created_at'];
|
member.createdAt = readString(data, 'created_at');
|
||||||
member.updatedAt = data['updated_at'];
|
member.updatedAt = readString(data, 'updated_at');
|
||||||
member.memberInviteUID = data['member_invite_uid'];
|
member.memberInviteUID = readString(data, 'member_invite_uid');
|
||||||
member.robot = data['robot'];
|
member.robot = readInt(data, 'robot');
|
||||||
member.forbiddenExpirationTime = data['forbidden_expiration_time'];
|
member.forbiddenExpirationTime = readInt(data, 'forbidden_expiration_time');
|
||||||
String channelName = readString(data, 'channel_name');
|
String channelName = readString(data, 'channel_name');
|
||||||
if (channelName != '') {
|
if (channelName != '') {
|
||||||
member.memberName = channelName;
|
member.memberName = channelName;
|
||||||
@ -212,19 +212,19 @@ class WKDBConst {
|
|||||||
|
|
||||||
static WKReminder serializeReminder(dynamic data) {
|
static WKReminder serializeReminder(dynamic data) {
|
||||||
WKReminder reminder = WKReminder();
|
WKReminder reminder = WKReminder();
|
||||||
reminder.type = data['type'];
|
reminder.type = readInt(data, 'type');
|
||||||
reminder.reminderID = data['reminder_id'];
|
reminder.reminderID = readInt(data, 'reminder_id');
|
||||||
reminder.messageID = data['message_id'];
|
reminder.messageID = readString(data, 'message_id');
|
||||||
reminder.messageSeq = data['message_seq'];
|
reminder.messageSeq = readInt(data, 'message_seq');
|
||||||
reminder.isLocate = data['is_locate'];
|
reminder.isLocate = readInt(data, 'is_locate');
|
||||||
reminder.channelID = data['channel_id'];
|
reminder.channelID = readString(data, 'channel_id');
|
||||||
reminder.channelType = data['channel_type'];
|
reminder.channelType = readInt(data, 'channel_type');
|
||||||
reminder.text = data['text'];
|
reminder.text = readString(data, 'text');
|
||||||
reminder.version = data['version'];
|
reminder.version = readInt(data, 'version');
|
||||||
reminder.done = data['done'];
|
reminder.done = readInt(data, 'done');
|
||||||
String data1 = data['data'];
|
String data1 = readString(data, 'data');
|
||||||
reminder.needUpload = data['needUpload'];
|
reminder.needUpload = readInt(data, 'needUpload');
|
||||||
reminder.publisher = data['publisher'];
|
reminder.publisher = readString(data, 'publisher');
|
||||||
if (data1 != '') {
|
if (data1 != '') {
|
||||||
reminder.data = jsonDecode(data1);
|
reminder.data = jsonDecode(data1);
|
||||||
}
|
}
|
||||||
|
@ -109,7 +109,7 @@ class MessaggeDB {
|
|||||||
await WKDBHelper.shared.getDB().rawQuery(sql);
|
await WKDBHelper.shared.getDB().rawQuery(sql);
|
||||||
if (list.isNotEmpty) {
|
if (list.isNotEmpty) {
|
||||||
dynamic data = list[0];
|
dynamic data = list[0];
|
||||||
maxOrderSeq = data['order_seq'];
|
maxOrderSeq = WKDBConst.readInt(data, 'order_seq');
|
||||||
}
|
}
|
||||||
return maxOrderSeq;
|
return maxOrderSeq;
|
||||||
}
|
}
|
||||||
@ -122,7 +122,7 @@ class MessaggeDB {
|
|||||||
await WKDBHelper.shared.getDB().rawQuery(sql);
|
await WKDBHelper.shared.getDB().rawQuery(sql);
|
||||||
if (list.isNotEmpty) {
|
if (list.isNotEmpty) {
|
||||||
dynamic data = list[0];
|
dynamic data = list[0];
|
||||||
messageSeq = data['message_seq'];
|
messageSeq = WKDBConst.readInt(data, 'message_seq');
|
||||||
}
|
}
|
||||||
return messageSeq;
|
return messageSeq;
|
||||||
}
|
}
|
||||||
@ -136,7 +136,7 @@ class MessaggeDB {
|
|||||||
await WKDBHelper.shared.getDB().rawQuery(sql);
|
await WKDBHelper.shared.getDB().rawQuery(sql);
|
||||||
if (list.isNotEmpty) {
|
if (list.isNotEmpty) {
|
||||||
dynamic data = list[0];
|
dynamic data = list[0];
|
||||||
minOrderSeq = data['order_seq'];
|
minOrderSeq = WKDBConst.readInt(data, 'order_seq');
|
||||||
}
|
}
|
||||||
return minOrderSeq;
|
return minOrderSeq;
|
||||||
}
|
}
|
||||||
@ -416,7 +416,7 @@ class MessaggeDB {
|
|||||||
await WKDBHelper.shared.getDB().rawQuery(sql);
|
await WKDBHelper.shared.getDB().rawQuery(sql);
|
||||||
if (list.isNotEmpty) {
|
if (list.isNotEmpty) {
|
||||||
dynamic data = list[0];
|
dynamic data = list[0];
|
||||||
num = data['num'];
|
num = WKDBConst.readInt(data, 'num');
|
||||||
}
|
}
|
||||||
return num;
|
return num;
|
||||||
}
|
}
|
||||||
@ -437,7 +437,7 @@ class MessaggeDB {
|
|||||||
await WKDBHelper.shared.getDB().rawQuery(sql);
|
await WKDBHelper.shared.getDB().rawQuery(sql);
|
||||||
if (list.isNotEmpty) {
|
if (list.isNotEmpty) {
|
||||||
dynamic data = list[0];
|
dynamic data = list[0];
|
||||||
messageSeq = data['message_seq'];
|
messageSeq = WKDBConst.readInt(data, 'message_seq');
|
||||||
}
|
}
|
||||||
return messageSeq;
|
return messageSeq;
|
||||||
}
|
}
|
||||||
|
@ -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.0.0
|
version: 1.0.1
|
||||||
homepage: https://github.com/WuKongIM/WuKongIMFlutterSDK
|
homepage: https://github.com/WuKongIM/WuKongIMFlutterSDK
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user