my_cookie.dart 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. import 'dart:convert';
  2. import 'package:bbyyy/beans/login_information_bean_entity.dart';
  3. import 'package:bbyyy/beans/user_bean_entity.dart';
  4. import 'package:disable_screenshots/disable_screenshots.dart';
  5. import 'package:flutter/cupertino.dart';
  6. import 'package:package_info/package_info.dart';
  7. import 'package:shared_preferences/shared_preferences.dart';
  8. String appName = '梆梆鱼';
  9. class MyCookie {
  10. MyCookie._internal() {
  11. initP();
  12. }
  13. //保存单例
  14. static MyCookie _singleton = new MyCookie._internal();
  15. //工厂构造函数
  16. factory MyCookie() => _singleton;
  17. String server = '172.16.104.14';
  18. // String server = '39.108.225.84';
  19. // String server = 'bby.banghuo.net';
  20. SharedPreferences prefs;
  21. PackageInfo packageInfo;
  22. UserBeanDataData userBean;
  23. DisableScreenshots plugin;
  24. getUT() {
  25. return 'user=${loginInformation.data.user}&token=${loginInformation.data.token}';
  26. }
  27. getServer(){
  28. return 'http://$server:3001';
  29. }
  30. initP() async {
  31. prefs = await SharedPreferences.getInstance();
  32. packageInfo = await PackageInfo.fromPlatform();
  33. plugin= DisableScreenshots();
  34. if(prefs.getBool('收入进账提示音')==null){
  35. prefs.setBool('收入进账提示音', true);
  36. }
  37. if(prefs.getBool('聊天新消息提示音')==null){
  38. prefs.setBool('聊天新消息提示音', true);
  39. }
  40. }
  41. LoginInformationBeanEntity loginInformation;
  42. saveLoginInformationBeanEntity(
  43. LoginInformationBeanEntity loginInformationBeanEntity) {
  44. prefs.setString(
  45. 'LoginInformationBeanEntity', json.encode(loginInformationBeanEntity));
  46. loginInformation = loginInformationBeanEntity;
  47. }
  48. getLoginInformation() {
  49. if (loginInformation == null) {
  50. try {
  51. loginInformation = LoginInformationBeanEntity().fromJson(
  52. json.decode(prefs.getString('LoginInformationBeanEntity')));
  53. } catch (e) {
  54. return null;
  55. }
  56. return loginInformation;
  57. } else {
  58. return loginInformation;
  59. }
  60. }
  61. getUser(){
  62. return loginInformation.data.user;
  63. }
  64. getToken(){
  65. return loginInformation.data.token;
  66. }
  67. getUID(){
  68. return loginInformation.data.extra.uid;
  69. }
  70. clean(){
  71. loginInformation = null;
  72. prefs.clear();
  73. }
  74. String getName() {
  75. return loginInformation.data.extra.name;
  76. }
  77. }