通过环信消息回调显示观众端的礼物显示,发现退出再进入直播间时,另一端送礼物,本端的礼物数量随着进入的次数叠加。调试后,发现是因为环信的消息队列里面存在着之前的礼物消息,每当出发环信消息监听时,队列的所有消息都会重新走一遍,导致历史礼物消息再走了一遍,才出现了礼物叠加的情况。
解决思路:每当退出观看直播时,清空消息队列里的消息。(或者在消息监听里过滤历史消息)
===
清空消息队列好像也不行,最后解决的办法是在回调显示礼物后把消息置为null。
if (messageType==6){
mOnUserExitLiveInfo.doGiftAnim(message);//回调显示礼物
message = null; //解决礼物叠加问题
}
网友评论