import 'package:dating_touchme_app/controller/global.dart'; import 'package:dating_touchme_app/controller/message/conversation_controller.dart'; import 'package:dating_touchme_app/controller/discover/room_controller.dart'; import 'package:dating_touchme_app/controller/overlay_controller.dart'; import 'package:dating_touchme_app/im/im_manager.dart'; import 'package:get/get.dart'; import 'package:get_storage/get_storage.dart'; class DeactivateController extends GetxController { final storage = GetStorage(); final s = "".obs; void logout() async { // 退出直播间 if (Get.isRegistered()) { try { final roomController = Get.find(); await roomController.leaveChannel(); } catch (e) { print('退出直播间失败: $e'); } } // 取消小窗口 if (Get.isRegistered()) { try { final overlayController = Get.find(); overlayController.hide(); // 隐藏直播房间小窗 overlayController.hideVideoCall(); // 隐藏视频通话小窗 } catch (e) { print('取消小窗口失败: $e'); } } // 先退出 IM 登录 if(IMManager.instance.isInitialized){ await IMManager.instance.logout(); } // 清除会话列表和用户信息缓存 if (Get.isRegistered()) { final conversationController = Get.find(); conversationController.clearConversations(); } // 清除本地存储 // storage.erase(); storage.remove('userId'); storage.remove('token'); // 清除全局数据 GlobalData().logout(); } }