import 'dart:convert'; import 'package:bbyyy/beans/login_information_bean_entity.dart'; import 'package:bbyyy/beans/user_bean_entity.dart'; import 'package:disable_screenshots/disable_screenshots.dart'; import 'package:flutter/cupertino.dart'; import 'package:package_info/package_info.dart'; import 'package:shared_preferences/shared_preferences.dart'; String appName = '梆梆鱼'; class MyCookie { MyCookie._internal() { initP(); } //保存单例 static MyCookie _singleton = new MyCookie._internal(); //工厂构造函数 factory MyCookie() => _singleton; String server = '172.16.104.14'; // String server = '39.108.225.84'; // String server = 'bby.banghuo.net'; SharedPreferences prefs; PackageInfo packageInfo; UserBeanDataData userBean; DisableScreenshots plugin; getUT() { return 'user=${loginInformation.data.user}&token=${loginInformation.data.token}'; } getServer(){ return 'http://$server:3001'; } initP() async { prefs = await SharedPreferences.getInstance(); packageInfo = await PackageInfo.fromPlatform(); plugin= DisableScreenshots(); if(prefs.getBool('收入进账提示音')==null){ prefs.setBool('收入进账提示音', true); } if(prefs.getBool('聊天新消息提示音')==null){ prefs.setBool('聊天新消息提示音', true); } } LoginInformationBeanEntity loginInformation; saveLoginInformationBeanEntity( LoginInformationBeanEntity loginInformationBeanEntity) { prefs.setString( 'LoginInformationBeanEntity', json.encode(loginInformationBeanEntity)); loginInformation = loginInformationBeanEntity; } getLoginInformation() { if (loginInformation == null) { try { loginInformation = LoginInformationBeanEntity().fromJson( json.decode(prefs.getString('LoginInformationBeanEntity'))); } catch (e) { return null; } return loginInformation; } else { return loginInformation; } } getUser(){ return loginInformation.data.user; } getToken(){ return loginInformation.data.token; } getUID(){ return loginInformation.data.extra.uid; } clean(){ loginInformation = null; prefs.clear(); } String getName() { return loginInformation.data.extra.name; } }