my_cookie.dart 2.3 KB

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