Blame view

lib/common/core/app_config_helper.dart 1.93 KB
28f20da9   吴启风   feat:针对apple审核对支付...
1
  import 'dart:ffi';
caec5687   吴启风   feat:header传应用版本号
2
  import 'dart:io';
28f20da9   吴启风   feat:针对apple审核对支付...
3
  
caec5687   吴启风   feat:header传应用版本号
4
  import 'package:flutter/cupertino.dart';
258578de   吴启风   feat:修复ios上退出应用失效问题
5
  import 'package:flutter/services.dart';
caec5687   吴启风   feat:header传应用版本号
6
  import 'package:package_info_plus/package_info_plus.dart';
2a9895f6   吴启风   feat:首次启动隐私协议弹窗
7
  import 'package:wow_english/common/core/sp_const.dart';
28f20da9   吴启风   feat:针对apple审核对支付...
8
9
10
  import 'package:wow_english/common/core/user_util.dart';
  
  import '../../models/app_config_entity.dart';
2a9895f6   吴启风   feat:首次启动隐私协议弹窗
11
  import '../../utils/sp_util.dart';
28f20da9   吴启风   feat:针对apple审核对支付...
12
13
14
15
  import '../request/dao/system_dao.dart';
  
  class AppConfigHelper {
  
cde7505e   吴启风   feat:应用内升级
16
    static AppConfigEntity? configEntityEntity;
28f20da9   吴启风   feat:针对apple审核对支付...
17
  
cde7505e   吴启风   feat:应用内升级
18
    static String _versionCode = '';
caec5687   吴启风   feat:header传应用版本号
19
  
cde7505e   吴启风   feat:应用内升级
20
21
22
23
24
    // 获取用户信息
    static Future<AppConfigEntity?> getAppConfig() async {
      if (configEntityEntity != null) {
        return configEntityEntity;
      }
28f20da9   吴启风   feat:针对apple审核对支付...
25
      configEntityEntity = await SystemDao.getAppConfig();
cde7505e   吴启风   feat:应用内升级
26
      return configEntityEntity;
28f20da9   吴启风   feat:针对apple审核对支付...
27
28
29
30
31
32
    }
  
    // 是否需要隐藏...
    static bool shouldHidePay() {
      return configEntityEntity?.isAppReviewing() == true || UserUtil.getUser()?.phoneNum == "17730280759";
    }
caec5687   吴启风   feat:header传应用版本号
33
34
35
  
    // 获取app版本号
    static Future<String> getAppVersion() async {
cde7505e   吴启风   feat:应用内升级
36
37
      if (_versionCode.isNotEmpty) {
        return _versionCode;
caec5687   吴启风   feat:header传应用版本号
38
39
      }
      PackageInfo packageInfo = await PackageInfo.fromPlatform();
cde7505e   吴启风   feat:应用内升级
40
41
42
      String versionName = packageInfo.version; // 版本号
      String versionCode = packageInfo.buildNumber; // 构建号
      _versionCode = versionCode;
caec5687   吴启风   feat:header传应用版本号
43
  
cde7505e   吴启风   feat:应用内升级
44
      debugPrint('versionName=$versionName versionCode=$versionCode platForm=${Platform.operatingSystem}');
caec5687   吴启风   feat:header传应用版本号
45
46
      return versionCode;
    }
2a9895f6   吴启风   feat:首次启动隐私协议弹窗
47
48
49
50
51
52
53
54
55
56
57
58
  
    static void saveAgreementAccepted(bool accepted) {
      SpUtil.getInstance().setData(SpConst.prefsKeyAgreementAccepted, accepted);
    }
  
    static bool getAgreementAccepted() {
      return SpUtil.getInstance().get<bool>(SpConst.prefsKeyAgreementAccepted) ?? false;
    }
  
    static void _clearUserData() {
      SpUtil.getInstance().remove(SpConst.prefsKeyAgreementAccepted);
    }
258578de   吴启风   feat:修复ios上退出应用失效问题
59
60
61
62
63
64
65
66
67
  
    static void exitApp() {
      if (Platform.isIOS) {
        exit(0);
      } else {
        //此种方式在IOS上不生效
        SystemNavigator.pop();
      }
    }
28f20da9   吴启风   feat:针对apple审核对支付...
68
  }