diff --git a/BaseModule/src/main/java/com/xscm/moduleutil/utils/QXRedPacketManager.java b/BaseModule/src/main/java/com/xscm/moduleutil/utils/QXRedPacketManager.java index 2e57a881..d9214ddb 100644 --- a/BaseModule/src/main/java/com/xscm/moduleutil/utils/QXRedPacketManager.java +++ b/BaseModule/src/main/java/com/xscm/moduleutil/utils/QXRedPacketManager.java @@ -50,15 +50,16 @@ public class QXRedPacketManager { * * @param redPackets 红包模型列表 */ - public void addRedPackets(List redPackets) { + public void addRedPackets(String roomId,List redPackets) { if (redPackets == null || redPackets.isEmpty()) { return; } + this.redPackets.entrySet().removeIf(entry -> + !(entry.getValue().getRoom_id()+"").equals(roomId)); for (RedPacketInfo model : redPackets) { this.redPackets.put(model.getRedpacket_id(), model); } - // 在添加数据后启动定时器(如果尚未启动) startCheckTimer(); if (this.delegate != null && this.delegate instanceof QXRedPacketManagerDelegate) { @@ -71,11 +72,12 @@ public class QXRedPacketManager { * * @param redPacket 红包模型 */ - public void addRedPacket(RedPacketInfo redPacket) { + public void addRedPacket(String roomId,RedPacketInfo redPacket) { if (redPacket == null || redPacket.getRedpacket_id() == null) { return; } - + this.redPackets.entrySet().removeIf(entry -> + !(entry.getValue().getRoom_id()+"").equals(roomId)); this.redPackets.put(redPacket.getRedpacket_id(), redPacket); // 在添加数据后启动定时器(如果尚未启动) diff --git a/MainModule/src/main/java/com/xscm/modulemain/activity/room/activity/RoomActivity.kt b/MainModule/src/main/java/com/xscm/modulemain/activity/room/activity/RoomActivity.kt index 48857d91..9e73e1de 100644 --- a/MainModule/src/main/java/com/xscm/modulemain/activity/room/activity/RoomActivity.kt +++ b/MainModule/src/main/java/com/xscm/modulemain/activity/room/activity/RoomActivity.kt @@ -1498,7 +1498,7 @@ class RoomActivity : BaseMvpActivity(), xlhDjs(messageEvent.text.end_time) } else if (msgType == EMMessageInfo.QXRoomMessageTypeQXRoomMessageRed) { - qxRedPacketManager!!.addRedPacket(messageEvent.text.redpacketInfo) + qxRedPacketManager!!.addRedPacket(roomId,messageEvent.text.redpacketInfo) } else if (msgType == EMMessageInfo.QXRoomMessageTypeQXRoomMessageRedRemove) { qxRedPacketManager!!.removeRedPacket(messageEvent.text.redpacket_id) } else if (msgType == EMMessageInfo.QXRoomMessageTypeSongerNum || //房间点歌数量变化 @@ -3711,7 +3711,6 @@ class RoomActivity : BaseMvpActivity(), MvpPre?.quitRoom(roomId, SpUtil.getUserId().toString()) - ClickUtils.clearAllClickRecords() AgoraManager.getInstance().cleanup() roomId = roomId2 @@ -4105,7 +4104,10 @@ class RoomActivity : BaseMvpActivity(), override fun roomRedPackets(list: MutableList?) { if (list != null) { - qxRedPacketManager!!.addRedPackets(list!!) + mBinding?.drvRed?.visibility = View.VISIBLE + qxRedPacketManager!!.addRedPackets(roomId,list!!) + }else{ + mBinding?.drvRed?.visibility = View.GONE } } diff --git a/app/build.gradle b/app/build.gradle index 6d81d2b1..1fc4a0e4 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -118,7 +118,7 @@ android { def versionCode = variant.versionCode // 获取当前时间戳(格式:yyyyMMddHHmmss) def buildTimes = new Date().format("yyyy-MM-dd-HH-mm") - def fileName = "羽声_${versionName}_${versionCode}_${buildTimes}.apk" + def fileName = "yusheng_${versionName}_${versionCode}_${buildTimes}.apk" output.outputFileName = fileName } }