From 26937a374d825c3eb411054076e37fd0a6669c90 Mon Sep 17 00:00:00 2001 From: fuenmao <980740792@qq.com> Date: Wed, 18 Dec 2024 09:49:31 +0800 Subject: [PATCH] =?UTF-8?q?=E7=82=B9=E5=87=BB=E5=BC=80=E5=90=AF=E6=91=84?= =?UTF-8?q?=E5=83=8F=E5=A4=B4=E7=9A=84=E6=97=B6=E5=80=99=E4=B9=9F=E5=BC=B9?= =?UTF-8?q?=E5=87=BA=E7=94=B3=E8=AF=B7=E5=8F=91=E8=A8=80=E5=BC=B9=E7=AA=97?= =?UTF-8?q?=EF=BC=8C=E6=B7=BB=E5=8A=A0=E5=8F=98=E9=87=8F=E5=B9=B6=E5=9C=A8?= =?UTF-8?q?=E5=9B=9E=E8=B0=83=E9=87=8C=E4=BC=98=E5=8C=96=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- wgshare/lib/pages/metting/meeting_main_logic.dart | 7 ++++++- wgshare/lib/pages/metting/meeting_main_state.dart | 2 ++ wgshare/lib/pages/metting/meeting_main_view.dart | 15 +++++++++++---- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/wgshare/lib/pages/metting/meeting_main_logic.dart b/wgshare/lib/pages/metting/meeting_main_logic.dart index 852cc3a..f84695e 100644 --- a/wgshare/lib/pages/metting/meeting_main_logic.dart +++ b/wgshare/lib/pages/metting/meeting_main_logic.dart @@ -327,7 +327,11 @@ class MeetingMainLogic extends GetxController with RequestToolMixin { } if (UserStore.to.userInfoEntity.value!.uid == meetingRoomUser.uid) { state.isSpeak.value = true; - state.isOpenMicrophone.value = true; + if(state.defaulOpenState.value == 1){ + state.isOpenMicrophone.value = true; + }else if(state.defaulOpenState.value == 2){ + doHttpSetCamer(true); + } // 设置声网SDK角色为主播 setClientRole("主播"); debugPrint("wgs输出===:Socket-开启发言权限:主播"); @@ -343,6 +347,7 @@ class MeetingMainLogic extends GetxController with RequestToolMixin { } if (UserStore.to.userInfoEntity.value!.uid == meetingRoomUser.uid) { state.isSpeak.value = false; + state.defaulOpenState.value = 0; state.isOpenMicrophone.value = false; state.isOpenCamera.value = false; state.isOpenShare.value = false; diff --git a/wgshare/lib/pages/metting/meeting_main_state.dart b/wgshare/lib/pages/metting/meeting_main_state.dart index 0f0f671..b2823e2 100644 --- a/wgshare/lib/pages/metting/meeting_main_state.dart +++ b/wgshare/lib/pages/metting/meeting_main_state.dart @@ -60,6 +60,8 @@ class MeetingMainState { /// 是否被允许发言 late RxBool isSpeak = false.obs; + /// 允许发言后默认开启麦克风还是摄像头,0都关闭,1麦克风,2摄像头 + late RxInt defaulOpenState = 0.obs; /// 是否打开麦克风 late RxBool isOpenMicrophone = false.obs; /// 麦克风音量 diff --git a/wgshare/lib/pages/metting/meeting_main_view.dart b/wgshare/lib/pages/metting/meeting_main_view.dart index 22f2560..0c5f2e8 100644 --- a/wgshare/lib/pages/metting/meeting_main_view.dart +++ b/wgshare/lib/pages/metting/meeting_main_view.dart @@ -417,7 +417,7 @@ class MeetingMainPageState extends State { if (state.isSpeak.value == false) { Get.bottomSheet( isScrollControlled: true, - applySpeakPermissionBottomSheet(context)); + applySpeakPermissionBottomSheet(context,1)); } else { if (state.isOpenMicrophone.value == false) { logic.doHttpSetMicr(true); @@ -444,7 +444,9 @@ class MeetingMainPageState extends State { ), SizedBox(height: 4.h), Text( - state.isOpenCamera.value == true + state.isSpeak.value == false + ? '申请发言' + : state.isOpenCamera.value == true ? "关闭视频" : "开启视频", style: TextStyle( @@ -454,7 +456,11 @@ class MeetingMainPageState extends State { ], ), onTap: () { - if (state.isSpeak.value == true) { + if (state.isSpeak.value == false) { + Get.bottomSheet( + isScrollControlled: true, + applySpeakPermissionBottomSheet(context,2)); + } else { if (state.isOpenCamera.value == true) { logic.doHttpSetCamer(false); } else { @@ -868,7 +874,7 @@ class MeetingMainPageState extends State { } /// 申请发言权限底部弹窗 - Widget applySpeakPermissionBottomSheet(BuildContext context) { + Widget applySpeakPermissionBottomSheet(BuildContext context, int defaulOpenState) { return Container( height: 240.h, color: ColorUtil.Color_7_9_11, @@ -966,6 +972,7 @@ class MeetingMainPageState extends State { ), ), onTap: () { + state.defaulOpenState.value = defaulOpenState; logic.doHttpApplySpeak(); Get.back(); },