fix:update demo

This commit is contained in:
SL 2024-11-12 17:37:46 +08:00
parent 002315b82b
commit 62bbbc0581
3 changed files with 33 additions and 9 deletions

View File

@ -222,6 +222,7 @@ public class HttpUtil {
}
public WKSyncRecent getWKSyncRecent(JSONObject msgJson) {
Log.e("消息数据:", msgJson.toString());
String from_uid = msgJson.optString("from_uid");
String client_msg_no = msgJson.optString("client_msg_no");
String channel_id = msgJson.optString("channel_id");
@ -235,6 +236,7 @@ public class HttpUtil {
recent.from_uid = from_uid;
recent.message_id = msgJson.optString("message_id");
recent.message_seq = msgJson.optInt("message_seq");
recent.is_deleted = msgJson.optInt("is_deleted");
recent.client_msg_no = client_msg_no;
recent.channel_id = channel_id;
recent.channel_type = channel_type;
@ -258,11 +260,17 @@ public class HttpUtil {
}
WKSyncExtraMsg extraMsg = new WKSyncExtraMsg();
extraMsg.message_id_str = extraJson.optString("message_id_str");
extraMsg.revoke = extraJson.optInt("revoke");
extraMsg.revoker = extraJson.optString("revoker");
extraMsg.readed = extraJson.optInt("readed");
extraMsg.readed_count = extraJson.optInt("readed_count");
extraMsg.is_mutual_deleted = extraJson.optInt("is_mutual_deleted");
extraMsg.message_id = extraJson.optString("message_id_str");
if (extraJson.has("revoke"))
extraMsg.revoke = extraJson.optInt("revoke");
if (extraJson.has("revoker"))
extraMsg.revoker = extraJson.optString("revoker");
if (extraJson.has("readed"))
extraMsg.readed = extraJson.optInt("readed");
if (extraJson.has("readed_count"))
extraMsg.readed_count = extraJson.optInt("readed_count");
if (extraJson.has("is_mutual_deleted"))
extraMsg.is_mutual_deleted = extraJson.optInt("is_mutual_deleted");
recent.message_extra = extraMsg;
}
return recent;
@ -423,7 +431,7 @@ public class HttpUtil {
new Thread(() -> post("/message/revoke", json, (code, data) -> {
if (code == 200) {
Log.e("撤回成功","--->");
Log.e("撤回成功", "--->");
}
})).start();
}
@ -442,6 +450,7 @@ public class HttpUtil {
new Thread(() -> delete("/message", json, (code, data) -> {
if (code == 200) {
Log.e("删除消息成功", "-->");
WKIM.getInstance().getMsgManager().deleteWithClientMsgNO(clientMsgNo);
}
})).start();

View File

@ -20,6 +20,7 @@ import com.xinbida.wukongim.entity.WKChannel;
import com.xinbida.wukongim.entity.WKChannelType;
import com.xinbida.wukongim.entity.WKMsg;
import com.xinbida.wukongim.interfaces.IClearMsgListener;
import com.xinbida.wukongim.interfaces.IDeleteMsgListener;
import com.xinbida.wukongim.interfaces.IGetOrSyncHistoryMsgBack;
import com.xinbida.wukongim.interfaces.IRefreshMsg;
import com.xinbida.wukongim.msgmodel.WKTextContent;
@ -176,7 +177,7 @@ public class MainActivity extends AppCompatActivity {
if (adapter.getData().get(i).msg.clientSeq == msg.clientSeq) {
adapter.getData().get(i).msg.status = msg.status;
adapter.getData().get(i).msg.messageID = msg.messageID;
adapter.getData().get(i).msg.messageSeq= msg.messageSeq;
adapter.getData().get(i).msg.messageSeq = msg.messageSeq;
adapter.notifyItemChanged(i);
break;
}
@ -220,6 +221,19 @@ public class MainActivity extends AppCompatActivity {
}
}
});
// 监听删除消息
WKIM.getInstance().getMsgManager().addOnDeleteMsgListener(channelID, msg -> {
if (msg == null) {
return;
}
for (int i = 0; i < adapter.getData().size(); i++) {
if (msg.clientMsgNO.equals(adapter.getData().get(i).msg.clientMsgNO)) {
adapter.removeAt(i);
break;
}
}
});
}
@Override
@ -296,6 +310,7 @@ public class MainActivity extends AppCompatActivity {
WKIM.getInstance().getMsgManager().removeSendMsgAckListener(channelID);
WKIM.getInstance().getMsgManager().removeRefreshMsgListener(channelID);
WKIM.getInstance().getMsgManager().removeClearMsg(channelID);
WKIM.getInstance().getMsgManager().removeDeleteMsgListener(channelID);
}
}

View File

@ -81,13 +81,13 @@ class MessageAdapter extends BaseMultiItemQuickAdapter<UIMessageEntity, BaseView
(position, text) -> {
if (position == 0) {
if (uiMessageEntity.msg.messageSeq > 0) {
HttpUtil.getInstance().deleteMsg(uiMessageEntity.msg.channelID, uiMessageEntity.msg.channelType, uiMessageEntity.msg.messageSeq, uiMessageEntity.msg.messageID, uiMessageEntity.msg.messageID);
HttpUtil.getInstance().deleteMsg(uiMessageEntity.msg.channelID, uiMessageEntity.msg.channelType, uiMessageEntity.msg.messageSeq, uiMessageEntity.msg.messageID, uiMessageEntity.msg.clientMsgNO);
} else {
WKIM.getInstance().getMsgManager().deleteWithClientMsgNO(uiMessageEntity.msg.clientMsgNO);
}
} else {
if (uiMessageEntity.msg.messageSeq > 0) {
HttpUtil.getInstance().revokeMsg(uiMessageEntity.msg.channelID, uiMessageEntity.msg.channelType, uiMessageEntity.msg.messageID, uiMessageEntity.msg.messageID);
HttpUtil.getInstance().revokeMsg(uiMessageEntity.msg.channelID, uiMessageEntity.msg.channelType, uiMessageEntity.msg.messageID, uiMessageEntity.msg.clientMsgNO);
}
}
})