using LitJson; namespace GFGGame { public class LauncherConfig { public enum EnumNetType { DEV, LOCAL, TEMP, TISHEN, PUBLIC } public static EnumNetType netType = EnumNetType.LOCAL; public static string cfgName; //热更代码存放位置 public const string DllDirHotfix = "Assets/ResIn/Dll/Update/"; public const string DllDirAOT = "Assets/ResIn/Dll/AOT/"; public const int HTTP_GET_TIME_OUT = 3; public const int HTTP_POST_TIME_OUT = 15; public const string SQL_FILE_NAME = "excelConfig.sqlite.bytes"; public const string LAST_LOGIN_IS_AGREE_KEY = "LAST_LOGIN_IS_AGREE_KEY_6"; //上次登录是否同意隐私政策 public static string CDN_ROOT; public static string launcherRootUrl; public static string cfgUrl; //平台id public static int platformId = 1; //渠道id public static int ChannelId = 101; public static string logApiRootUrl; //上报普通日志接口 public static string logApiReportLauncherUrl; //上报节点日志接口 public static string apkVersion; //0 正常,1 维护中 public static int serverStatus; public static string statusPrompt; //0 关闭所有log界面,1 开启后台log界面, 2 开启弹窗log界面 public static int onDebug; //AB资源版本 public static string manifest_v; //隐私政策文件地址模版 public static string privacy_v; public static string updateAppPrompt; public static string updateResPrompt; public static int promptSizeMB; public static string updateUrl; //新发行给的adId public static string douYouAdId; public static void InitScriptCompilation() { launcherRootUrl = "http://gfg-client.obs.cn-north-4.myhuaweicloud.com/"; #if PT_DEV //外网dev版本 netType = EnumNetType.LOCAL; cfgName = "cfg_dev"; ChannelId = (int)ChannelID.Test; #elif PT_TAPTAP netType = EnumNetType.PUBLIC; cfgName = "cfg_taptap"; ChannelId = (int)ChannelID.TapTap; #elif PT_DOUYOU netType = EnumNetType.PUBLIC; cfgName = "cfg_douyou"; ChannelId = (int)ChannelID.DouYou; #elif PT_IOS netType = EnumNetType.PUBLIC; cfgName = "cfg_ios"; platformId = 2; ChannelId = (int)ChannelID.AppStore; #elif PT_TISHEN netType = EnumNetType.TISHEN; cfgName = "cfg_ts"; #else netType = EnumNetType.LOCAL; cfgName = "cfg_local"; ChannelId = (int)ChannelID.Test; #endif cfgUrl = launcherRootUrl + "platform/{cfgName}.json"; } public static void InitPlatform(string json) { var result = JsonMapper.ToObject(json); LauncherConfig.CDN_ROOT = result.cdnRoot; LauncherConfig.logApiRootUrl = result.logApiUrl; LauncherConfig.logApiReportLauncherUrl = LauncherConfig.logApiRootUrl + "ReportNode"; LauncherConfig.apkVersion = result.apkVersion; if (!string.IsNullOrEmpty(result.serverStatus)) { LauncherConfig.serverStatus = int.Parse(result.serverStatus); } if (!string.IsNullOrEmpty(result.onDebug)) { LauncherConfig.onDebug = int.Parse(result.onDebug); } if (!string.IsNullOrEmpty(result.douYouAdId)) { LauncherConfig.douYouAdId = result.douYouAdId; } LauncherConfig.manifest_v = result.manifest_v; LauncherConfig.privacy_v = result.privacy_v; LauncherConfig.statusPrompt = result.statusPrompt; LauncherConfig.updateAppPrompt = result.updateAppPrompt; LauncherConfig.updateResPrompt = result.updateResPrompt; LauncherConfig.updateUrl = result.updateUrl; if (!string.IsNullOrEmpty(result.promptSizeMB)) { LauncherConfig.promptSizeMB = int.Parse(result.promptSizeMB); } } private struct Result { public string cdnRoot; public string logApiUrl; public string apkVersion; public string serverStatus; public string onDebug; public string manifest_v; public string privacy_v; public string statusPrompt; public string updateAppPrompt; public string updateResPrompt; public string promptSizeMB; public string updateUrl; public string douYouAdId; } } }