import 'dart:convert'; import 'package:amap_location/amap_location.dart'; 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: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 = 'bby.banghuo.net'; // String server = '39.108.225.84'; SharedPreferences prefs; PackageInfo packageInfo; UserBeanDataData userBean; DisableScreenshots plugin; AMapLocation location; 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; } 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; } String getToken() { return loginInformation.data.token; } getUID() { return loginInformation.data.extra.uid; } clean() { loginInformation = null; prefs.clear(); } String getName() { return loginInformation.data.extra.name; } String getPic() { return loginInformation.data.extra.picture; } }