mirror of
https://github.com/WuKongIM/WuKongIMAndroidSDK
synced 2025-06-06 09:08:33 +00:00
Merge branch 'master' of https://github.com/WuKongIM/WuKongIMAndroidSDK
This commit is contained in:
commit
deb45d9c6a
@ -22,6 +22,7 @@ import java.util.HashMap;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.CopyOnWriteArrayList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 5/20/21 5:49 PM
|
* 5/20/21 5:49 PM
|
||||||
@ -43,7 +44,7 @@ public class ChannelManager extends BaseManager {
|
|||||||
|
|
||||||
private IRefreshChannelAvatar iRefreshChannelAvatar;
|
private IRefreshChannelAvatar iRefreshChannelAvatar;
|
||||||
private IGetChannelInfo iGetChannelInfo;
|
private IGetChannelInfo iGetChannelInfo;
|
||||||
private final List<WKChannel> wkChannelList = Collections.synchronizedList(new ArrayList<>());
|
private final CopyOnWriteArrayList<WKChannel> wkChannelList = new CopyOnWriteArrayList<>();
|
||||||
//监听刷新频道
|
//监听刷新频道
|
||||||
private ConcurrentHashMap<String, IRefreshChannel> refreshChannelMap;
|
private ConcurrentHashMap<String, IRefreshChannel> refreshChannelMap;
|
||||||
|
|
||||||
|
@ -24,6 +24,7 @@ import com.xinbida.wukongim.interfaces.ISyncConversationChat;
|
|||||||
import com.xinbida.wukongim.interfaces.ISyncConversationChatBack;
|
import com.xinbida.wukongim.interfaces.ISyncConversationChatBack;
|
||||||
import com.xinbida.wukongim.message.type.WKConnectStatus;
|
import com.xinbida.wukongim.message.type.WKConnectStatus;
|
||||||
import com.xinbida.wukongim.message.type.WKMsgContentType;
|
import com.xinbida.wukongim.message.type.WKMsgContentType;
|
||||||
|
import com.xinbida.wukongim.utils.DispatchQueuePool;
|
||||||
import com.xinbida.wukongim.utils.WKCommonUtils;
|
import com.xinbida.wukongim.utils.WKCommonUtils;
|
||||||
import com.xinbida.wukongim.utils.WKLoggerUtils;
|
import com.xinbida.wukongim.utils.WKLoggerUtils;
|
||||||
|
|
||||||
@ -41,6 +42,8 @@ import java.util.concurrent.ConcurrentHashMap;
|
|||||||
* 最近会话管理
|
* 最近会话管理
|
||||||
*/
|
*/
|
||||||
public class ConversationManager extends BaseManager {
|
public class ConversationManager extends BaseManager {
|
||||||
|
private final DispatchQueuePool dispatchQueuePool = new DispatchQueuePool(3);
|
||||||
|
|
||||||
private final String TAG = "ConversationManager";
|
private final String TAG = "ConversationManager";
|
||||||
|
|
||||||
private ConversationManager() {
|
private ConversationManager() {
|
||||||
@ -238,7 +241,7 @@ public class ConversationManager extends BaseManager {
|
|||||||
long version = ConversationDbManager.getInstance().queryMaxVersion();
|
long version = ConversationDbManager.getInstance().queryMaxVersion();
|
||||||
String lastMsgSeqStr = ConversationDbManager.getInstance().queryLastMsgSeqs();
|
String lastMsgSeqStr = ConversationDbManager.getInstance().queryLastMsgSeqs();
|
||||||
runOnMainThread(() -> iSyncConversationChat.syncConversationChat(lastMsgSeqStr, 20, version, syncChat -> {
|
runOnMainThread(() -> iSyncConversationChat.syncConversationChat(lastMsgSeqStr, 20, version, syncChat -> {
|
||||||
new Thread(() -> saveSyncChat(syncChat, () -> iSyncConversationChatBack.onBack(syncChat))).start();
|
dispatchQueuePool.execute(() -> saveSyncChat(syncChat, () -> iSyncConversationChatBack.onBack(syncChat)));
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -139,7 +139,7 @@ public class CryptoUtils {
|
|||||||
|
|
||||||
|
|
||||||
public byte[] base64Decode(String data) {
|
public byte[] base64Decode(String data) {
|
||||||
return Base64.decode(data, Base64.NO_WRAP);
|
return Base64.decode(data, Base64.NO_WRAP);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user