Browse Source

完善页面

dev-2.0
王子贤 2 weeks ago
parent
commit
493d19c120
3 changed files with 27 additions and 5 deletions
  1. 4
      lib/pages/discover/discover_page.dart
  2. 1
      lib/pages/discover/live_room_page.dart
  3. 27
      lib/rtc/rtc_manager.dart

4
lib/pages/discover/discover_page.dart

@ -93,7 +93,7 @@ class _DiscoverPageState extends State<DiscoverPage>
height: 27.w,
decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(27.w)),
color: const Color.fromRGBO(0, 0, 0, .2)
color: Colors.white
),
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
@ -101,13 +101,11 @@ class _DiscoverPageState extends State<DiscoverPage>
Icon(
Icons.search,
size: 15.w,
color: Colors.white,
),
Text(
"搜索",
style: TextStyle(
fontSize: 12.w,
color: Colors.white
),
)
],

1
lib/pages/discover/live_room_page.dart

@ -624,7 +624,6 @@ class _LiveRoomPageState extends State<LiveRoomPage> {
final roomController = Get.find<RoomController>();
roomController.chatMessages.clear();
}
// pop Get.back()
Get.off(() => SettlementPage());
//

27
lib/rtc/rtc_manager.dart

@ -3,7 +3,9 @@ import 'dart:convert';
import 'package:agora_rtc_engine/agora_rtc_engine.dart';
import 'package:agora_token_generator/agora_token_generator.dart';
import 'package:dating_touchme_app/controller/overlay_controller.dart';
import 'package:dating_touchme_app/extension/ex_widget.dart';
import 'package:dating_touchme_app/pages/discover/settlement_page.dart';
import 'package:dating_touchme_app/rtc/rtm_manager.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
@ -255,6 +257,7 @@ class RTCManager {
ConnectionStateType state,
ConnectionChangedReasonType reason,
) async{
print('连接状态改变:$state,原因:$reason, localUid: ${connection.localUid}');
if(state == ConnectionStateType.connectionStateFailed &&
reason == ConnectionChangedReasonType.connectionChangedBannedByServer){
if (Get.isRegistered<RoomController>()) {
@ -265,11 +268,29 @@ class RTCManager {
await roomController.leaveChannel();
// LiveChatMessageService
LiveChatMessageService.instance.handleEndLiveMessage();
} else {
// 退RTM消息
await roomController.leaveChannel();
await roomController.getLiveData();
await roomController.getLiveIncome();
SmartDialog.dismiss();
if (Get.isRegistered<RoomController>()) {
final roomController = Get.find<RoomController>();
roomController.chatMessages.clear();
}
// pop Get.back()
Get.off(() => SettlementPage());
//
Future.delayed(const Duration(milliseconds: 200), () {
if (Get.isRegistered<OverlayController>()) {
final overlayController = Get.find<OverlayController>();
overlayController.hide();
}
});
}
}
return;
}
print('连接状态改变:$state,原因:$reason, localUid: ${connection.localUid}');
if (onConnectionStateChanged != null) {
onConnectionStateChanged!(connection, state, reason);
}
@ -614,6 +635,10 @@ class RTCManager {
print('当前不在频道中');
return;
}
_zeroTimer?.cancel();
_zeroTimer = null;
await RTMManager.instance.unsubscribe(_currentChannelId ?? '');
await _engine!.leaveChannel();
_currentUid = null;

Loading…
Cancel
Save