diff --git a/assets/images/logo.png b/assets/images/logo.png new file mode 100644 index 0000000..ae7eaf4 Binary files /dev/null and b/assets/images/logo.png differ diff --git a/lib/services/auth_service.dart b/lib/services/auth_service.dart index 0722d41..83e3799 100644 --- a/lib/services/auth_service.dart +++ b/lib/services/auth_service.dart @@ -1,6 +1,12 @@ import 'package:chat/models/user_info_model.dart'; import 'package:chat/providers/auth_provider.dart'; import 'package:chat/routes/auth_routes.dart'; +import 'package:chat/services/tim/apply_service.dart'; +import 'package:chat/services/tim/block_service.dart'; +import 'package:chat/services/tim/conversation_service.dart'; +import 'package:chat/services/tim/friend_service.dart'; +import 'package:chat/services/tim/group_service.dart'; +import 'package:chat/services/tim/message_service.dart'; import 'package:chat/services/tim_service.dart'; import 'package:chat/utils/hd_wallet.dart'; import 'package:get/get.dart'; @@ -28,6 +34,7 @@ class AuthService extends GetxService { String get _userSig => _box.read('userSig') ?? ''; String get _userToken => _box.read('userToken') ?? ''; Map get _userInfo => _box.read('userInfo') ?? {}; + String get mnemonic => _box.read('mnemonic') ?? ''; /// 用户信息,这个数据,在更新用户资料的时候,也应该更新 Rx userInfo = UserInfoModel.empty().obs; @@ -92,6 +99,14 @@ class AuthService extends GetxService { TimService.to.instance.logout(); + /// 移除这些服务 + Get.delete(); + Get.delete(); + Get.delete(); + Get.delete(); + Get.delete(); + Get.delete(); + userInfo.value = UserInfoModel.empty(); isLogin.value = false; Get.offAllNamed(AuthRoutes.index); diff --git a/lib/utils/im_tools.dart b/lib/utils/im_tools.dart index 91871c8..9ea1e54 100644 --- a/lib/utils/im_tools.dart +++ b/lib/utils/im_tools.dart @@ -210,7 +210,7 @@ class ImTools { } static showTrtcMessage(String userID) { - return showModalBottomSheet( + showModalBottomSheet( context: Get.context!, isScrollControlled: true, backgroundColor: AppColors.white, diff --git a/lib/views/moments/index/widgets/moment_header.dart b/lib/views/moments/index/widgets/moment_header.dart index 3c87e83..bf46a82 100644 --- a/lib/views/moments/index/widgets/moment_header.dart +++ b/lib/views/moments/index/widgets/moment_header.dart @@ -5,7 +5,6 @@ import 'package:chat/routes/moments_routes.dart'; import 'package:chat/services/auth_service.dart'; import 'package:chat/widgets/custom_avatar.dart'; import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; import 'package:flutter_easyrefresh/easy_refresh.dart'; import 'package:get/get.dart'; @@ -21,7 +20,7 @@ class MomentHeader extends StatelessWidget { @override Widget build(BuildContext context) { return SliverAppBar( - systemOverlayStyle: SystemUiOverlayStyle.light, + // systemOverlayStyle: SystemUiOverlayStyle.light, pinned: true, expandedHeight: 260, backgroundColor: AppColors.primary, diff --git a/lib/views/user/setting/safe/index_page.dart b/lib/views/user/setting/safe/index_page.dart index 3e1e962..b49eeb7 100644 --- a/lib/views/user/setting/safe/index_page.dart +++ b/lib/views/user/setting/safe/index_page.dart @@ -1,6 +1,10 @@ import 'package:chat/configs/app_colors.dart'; +import 'package:chat/services/auth_service.dart'; +import 'package:chat/utils/ui_tools.dart'; import 'package:chat/views/home/widgets/action_item.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:get/get.dart'; class UserSettingSafePage extends StatefulWidget { const UserSettingSafePage({Key? key}) : super(key: key); @@ -20,7 +24,47 @@ class _UserSettingSafePageState extends State { children: [ ActionItem( '导出助记词', - onTap: () {}, + onTap: () { + showModalBottomSheet( + context: context, + isScrollControlled: true, + backgroundColor: AppColors.white, + shape: const RoundedRectangleBorder( + borderRadius: BorderRadius.vertical(top: Radius.circular(8)), + ), + builder: (context) { + return Column( + mainAxisSize: MainAxisSize.min, + children: [ + const SizedBox(height: 16), + const Text('您的助记词'), + Container( + padding: const EdgeInsets.all(32), + child: Text( + AuthService.to.mnemonic, + style: const TextStyle( + fontSize: 18, + ), + ), + ), + ElevatedButton( + onPressed: () { + Clipboard.setData( + ClipboardData( + text: AuthService.to.mnemonic, + ), + ); + UiTools.toast('复制成功'); + Get.back(); + }, + child: const Text('复制'), + ), + const SizedBox(height: 16), + ], + ); + }, + ); + }, ), const Divider( height: 0,