From 522c4a9f6fa55aa6a1f298e7e151d15eaed120e7 Mon Sep 17 00:00:00 2001 From: Max Date: Tue, 23 Jan 2024 15:22:46 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E5=A4=8D=E5=A3=B0?= =?UTF-8?q?=E7=BD=91=E4=B8=8A=E9=BA=A6=E5=90=8E=E8=87=AA=E5=8A=A8=E5=BC=80?= =?UTF-8?q?=E9=BA=A6=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/manager/agora/EngineEventHandler.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/core/src/diff_src_erban/java/com/nnbc123/core/manager/agora/EngineEventHandler.java b/core/src/diff_src_erban/java/com/nnbc123/core/manager/agora/EngineEventHandler.java index 93500ac73..6d0e01a4c 100644 --- a/core/src/diff_src_erban/java/com/nnbc123/core/manager/agora/EngineEventHandler.java +++ b/core/src/diff_src_erban/java/com/nnbc123/core/manager/agora/EngineEventHandler.java @@ -11,6 +11,9 @@ import com.nnbc123.library.utils.SingleToastUtil; import io.agora.rtc2.ClientRoleOptions; import io.agora.rtc2.Constants; import io.agora.rtc2.IRtcEngineEventHandler; +import io.reactivex.Observable; +import io.reactivex.ObservableOnSubscribe; +import io.reactivex.android.schedulers.AndroidSchedulers; /** * @author by 梁馨 on 2020/9/14. @@ -129,7 +132,12 @@ public class EngineEventHandler extends IRtcEngineEventHandler { super.onClientRoleChanged(oldRole, newRole, newRoleOptions); //角色切换 麦克风切换 if (newRole == Constants.CLIENT_ROLE_BROADCASTER) { - RtcEngineManager.get().setMute(RtcEngineManager.get().isMute); + com.chuhai.utils.log.LogUtil.INSTANCE.d(TAG, "onClientRoleChanged() setMute mute:"+RtcEngineManager.get().isMute,false); + Observable.create((ObservableOnSubscribe) emitter -> { + com.chuhai.utils.log.LogUtil.INSTANCE.d(TAG, "onClientRoleChanged() setMute-main mute:"+RtcEngineManager.get().isMute,false); + RtcEngineManager.get().setMute(RtcEngineManager.get().isMute); + emitter.onComplete(); + }).subscribeOn(AndroidSchedulers.mainThread()).subscribe(); } } @@ -151,6 +159,7 @@ public class EngineEventHandler extends IRtcEngineEventHandler { super.onRemoteAudioStats(remoteAudioStats); Logger.t(TAG).d("onRemoteAudioStats uid%d", remoteAudioStats.uid); long uid = (long) remoteAudioStats.uid; + com.chuhai.utils.log.LogUtil.INSTANCE.d(TAG, "onRemoteAudioStats() setRemoteMute mute:"+(!AvRoomDataManager.get().checkIsOnMicByAccount(uid + "")),false); // 如果麦上没有这个人,不接收这个人的声音 RtcEngineManager.get().setRemoteMute(uid, !AvRoomDataManager.get().checkIsOnMicByAccount(uid + ""));