同步PIKO:修复相亲房送礼导致闭麦、结束导致闭麦问题;修复BaseRoomFragment麦克风状态判断问题

This commit is contained in:
max
2024-04-26 14:28:46 +08:00
parent ad543ccbbc
commit 4ff5ca40e3
2 changed files with 14 additions and 7 deletions

View File

@@ -560,10 +560,7 @@ open class BaseRoomFragment<V : IBaseRoomView?, P : BaseRoomPresenter<V>?> :
} else {
val roomQueueInfo = AvRoomDataManager.get()
.getRoomQueueMemberInfoByAccount(myUid.toString())
if (roomQueueInfo?.mChatRoomMember?.isNoProhibitMic == true && roomQueueInfo.mRoomMicInfo?.isMicMute == false) {
bottomView.setMicBtnEnable(true)
bottomView.setMicBtnOpen(true)
} else if (roomQueueInfo?.mChatRoomMember != null
if (roomQueueInfo?.mChatRoomMember != null
&& myUid.toString() == roomQueueInfo.mChatRoomMember.account
&& roomQueueInfo.mRoomMicInfo?.isMicMute == true
) {

View File

@@ -2136,6 +2136,9 @@ public final class IMNetEaseManager {
PkModel.get().syncPkList(userInfo, chatRoomMember.getGroupType());
noticePKInfo();
int oldMicPosition = AvRoomDataManager.get().getMicPosition(AuthModel.get().getCurrentUid());
boolean oldIsOnMic = AvRoomDataManager.get().isOwnerOnMic();
int size = mMicQueueMemberMap.size();
if (size > 0) {
for (int j = 0; j < size; j++) {
@@ -2179,9 +2182,16 @@ public final class IMNetEaseManager {
//開麥
AudioEngineManager.get().setRole(Constants.CLIENT_ROLE_BROADCASTER);
if (!roomQueueInfo.mChatRoomMember.isNoProhibitMic()) {
AudioEngineManager.get().setMute(roomQueueInfo.mRoomMicInfo.isMicMute() || AvRoomDataManager.get().mIsNeedOpenMic);
//默認閉麥去掉聲音采集
AudioEngineManager.get().stopLocalAudio();
/*
修复相亲房自动闭麦bug
原因:相亲房的某些麦位状态更新,走的是上麦通道,导致默认闭麦了
临时解决:若是相亲房且之前在麦或麦位没变化->不做闭麦操作
*/
if (!AvRoomDataManager.get().isDatingMode() || (AvRoomDataManager.get().isDatingMode() && (!oldIsOnMic || oldMicPosition != micPosition))) {
AudioEngineManager.get().setMute(roomQueueInfo.mRoomMicInfo.isMicMute() || AvRoomDataManager.get().mIsNeedOpenMic);
// 默認閉麥去掉聲音采集upMicroQueue
AudioEngineManager.get().stopLocalAudio();
}
}
}
noticeUpMic(Integer.parseInt(key), chatRoomMember.getAccount());