Browse Source

优化

dev-2.0
王子贤 3 weeks ago
parent
commit
8f85ad0d97
2 changed files with 38 additions and 2 deletions
  1. 8
      lib/controller/home/home_controller.dart
  2. 32
      lib/rtc/rtc_manager.dart

8
lib/controller/home/home_controller.dart

@ -1,5 +1,6 @@
import 'dart:async'; import 'dart:async';
import 'dart:convert'; import 'dart:convert';
import 'dart:math';
import 'package:dating_touchme_app/config/env_config.dart'; import 'package:dating_touchme_app/config/env_config.dart';
import 'package:dating_touchme_app/controller/discover/room_controller.dart'; import 'package:dating_touchme_app/controller/discover/room_controller.dart';
@ -116,7 +117,7 @@ class HomeController extends GetxController {
if (Get.isRegistered<RoomController>()) { if (Get.isRegistered<RoomController>()) {
final roomController = Get.find<RoomController>(); final roomController = Get.find<RoomController>();
if(data["data"]["illegalHandle"] == 1){ if(data["data"]["illegalHandle"] == 1){
RTCManager.instance.publishAudio();
// RTCManager.instance.closeCamera();
// overlay // overlay
if(!roomController.isDialogShowing.value){ if(!roomController.isDialogShowing.value){
@ -185,6 +186,7 @@ class HomeController extends GetxController {
), ),
).onTap(() { ).onTap(() {
// RTCManager.instance.reOpenCamera();
// overlay // overlay
SmartDialog.dismiss(); SmartDialog.dismiss();
roomController.setDialogDismiss(false); roomController.setDialogDismiss(false);
@ -313,7 +315,9 @@ class HomeController extends GetxController {
onError: (error) { onError: (error) {
print("SSE Error: $error"); print("SSE Error: $error");
sseClient.close(connectionId: "connectionId"); sseClient.close(connectionId: "connectionId");
Future.delayed(Duration(seconds: 3), () async {
final random = Random();
int value = random.nextInt(8) + 3;
Future.delayed(Duration(seconds: value), () async {
openSSE(); openSSE();
}); });

32
lib/rtc/rtc_manager.dart

@ -372,6 +372,21 @@ class RTCManager {
print("当前人脸数:$numFaces"); print("当前人脸数:$numFaces");
}, },
onRemoteVideoStateChanged: (
RtcConnection connection,
int remoteUid,
RemoteVideoState state,
RemoteVideoStateReason reason,
int elapsed
){
print("$remoteUid,$state");
print("变化变化");
if(state == RemoteVideoState.remoteVideoStateStopped){
} else {
}
},
onError: (ErrorCodeType err, String msg) { onError: (ErrorCodeType err, String msg) {
print('RTC Engine 错误:$err,消息:$msg'); print('RTC Engine 错误:$err,消息:$msg');
if (onError != null) { if (onError != null) {
@ -385,6 +400,7 @@ class RTCManager {
); );
} }
}, },
), ),
); );
} }
@ -773,4 +789,20 @@ class RTCManager {
}), }),
); );
} }
closeCamera() async {
await _engine?.enableLocalVideo(false);
}
reOpenCamera() async {
await _engine?.enableLocalVideo(true);
await _engine?.updateChannelMediaOptions(ChannelMediaOptions(
channelProfile: ChannelProfileType.channelProfileLiveBroadcasting,
clientRoleType: _clientRole,
autoSubscribeAudio: true,
autoSubscribeVideo: true,
publishCameraTrack: true,
publishMicrophoneTrack: true,
));
}
} }
Loading…
Cancel
Save