From 70a344485bd0c9b68ac91f72ed23ec5bfa998b09 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 25 十一月 2021 19:30:25 +0800 Subject: [PATCH] 功能完善 --- lib/utils/user_util.dart | 42 +++++++++++++++++++++++++++++++++++++++++- 1 files changed, 41 insertions(+), 1 deletions(-) diff --git a/lib/utils/user_util.dart b/lib/utils/user_util.dart index 3668216..8843036 100644 --- a/lib/utils/user_util.dart +++ b/lib/utils/user_util.dart @@ -1,13 +1,16 @@ +import 'dart:convert'; import 'dart:ui'; import 'package:flutter/cupertino.dart'; import 'package:flutter/services.dart'; import 'package:fluwx_no_pay/fluwx_no_pay.dart' as fluwx; +import 'package:locations/model/user/user_info.dart'; +import 'package:locations/utils/string_util.dart'; import 'package:shared_preferences/shared_preferences.dart'; class UserUtil { static const _loginMessageChannel = - const BasicMessageChannel('ThirdLogin', StandardMessageCodec()); + BasicMessageChannel('ThirdLogin', StandardMessageCodec()); //鏄惁鍚屾剰浜嗙敤鎴峰崗璁� static Future<bool> isAgreeProtocol() async { @@ -32,8 +35,45 @@ .then((value) {}); } + ///QQ鐧诲綍 static Future<Map> loginQQ() async { Map value = await _loginMessageChannel.send({"method": "loginQQ"}) as Map; return value; } + + //鏄惁宸茬粡鐧诲綍 + static Future<bool> isLogin() async { + UserInfo? user = await getUserInfo(); + return user != null; + } + + //鐢ㄦ埛淇℃伅 + static Future<UserInfo?> getUserInfo() async { + SharedPreferences prefs = await SharedPreferences.getInstance(); + String? result = await prefs.getString("user_info"); + if (StringUtil.isNullOrEmpty(result)) { + return null; + } else { + return UserInfo.fromJson(jsonDecode(result!)); + } + } + + static Future<int?> getUid() async { + UserInfo? user = await getUserInfo(); + if (user != null) { + return user.id; + } + return null; + } + + static Future setUserInfo(UserInfo user) async { + SharedPreferences prefs = await SharedPreferences.getInstance(); + await prefs.setString("user_info", jsonEncode(user)); + } + + //閫�鍑虹櫥褰� + static logout() async { + SharedPreferences prefs = await SharedPreferences.getInstance(); + prefs.remove("user_info"); + } } -- Gitblit v1.8.0