Files
51dj_android/analytics_sdk/lib/manager/user_manager.dart
T
2026-10-08 11:37:25 +07:00

36 lines
992 B
Dart

import 'package:analytics_sdk/enum/user_type_enum.dart';
/// 全局用户管理器
/// 负责管理用户类型信息,支持用户类型更新和登出操作
class UserManager {
static final UserManager instance = UserManager._internal();
factory UserManager() => instance;
UserManager._internal();
/// 当前用户类型:normal、vip 等
String _userType = UserTypeEnum.normal.label;
String get userType => _userType;
static String normalizeUserType(String? value) {
return value?.trim().toLowerCase() == UserTypeEnum.vip.label
? UserTypeEnum.vip.label
: UserTypeEnum.normal.label;
}
/// 更新用户类型(登录、升级会员、切换账号时调用)
void updateUserType(String newType) {
final normalized = normalizeUserType(newType);
if (_userType != normalized) {
_userType = normalized;
}
}
/// 登出
void logout() {
_userType = UserTypeEnum.normal.label; // 或 'guest',根据业务决定
}
}