miduo_client/Assets/ManagedResources/~Lua/Framework/Manager/ServerConfigManager.lua

88 lines
4.1 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

ServerConfigManager = { }
local _ActiveCode = 1 -- 激活版本
ServerConfigManager.SettingConfig = {
ServerVersion = "ServerVersion", -- 用于切换正式服和提审服
ThinkAnalysis_GetDeviceID = "ThinkAnalysis_GetDeviceID", -- 数数获取DeviceID方法
LayoutBuilderWrap = "LayoutBuilderWrap", -- 强制刷新layout组件大小的方法修改到lua中调用
LanguagePackager = "LanguagePackager", -- 本地化处理
UI_Layout_CanvasScaler = "UI_Layout_CanvasScaler", -- 屏幕适配
IS_PLAY_VOICE = "IS_PLAY_VOICE", -- 是否播放游戏内语音
IS_SHOW_HEALTH_TIP = "IS_SHOW_HEALTH_TIP", -- 是否显示健康提示
NOTICE_CHANNEL = "NOTICE_CHANNEL", -- 公告号
PACKAGE_CC_CODE = "PACKAGE_CC_CODE", -- CC号
SPRITE_LOADER = "SPRITE_LOADER", -- 资源加载器是否可以使用
IS_TITLE_EFFECT_SCALE = "IS_TITLE_EFFECT_SCALE", -- 判断
IS_PLAY_LOGIN_VIDEO = "IS_PLAY_LOGIN_VIDEO", -- 判断是否可以播放登录视频
PACKAGE_CONFIG = "PACKAGE_CONFIG", -- 包配置
IS_NO_TALKING = "IS_NO_TALKING", -- 禁言
IS_LOAD_STREAMING = "IS_LOAD_STREAMING", -- 是否加载外部资源
CURVED_TEXT_CODE = "CURVED_TEXT_CODE", -- 是否可以显示弧形文字
IS_SELECT_RESLUTION = "IS_SELECT_RESLUTION", -- 是否可以选择帧率
USER_CHANNEL = "USER_CHANNEL", -- 获取登录信息渠道
USER_PROTO = "USER_PROTO", -- 用户协议功能是否开启
IS_NO_NOTICE = "IS_NO_NOTICE", -- 是否禁用公告
INNER_WEB_CONTROL = "INNER_WEB_CONTROL", -- 是否使用内置浏览器
IS_NULL = "IS_NULL", -- 使用C#判断物体是否销毁
}
function ServerConfigManager.Initialize()
IS_PLAY_VOICE = ServerConfigManager.IsSettingActive(ServerConfigManager.SettingConfig.IS_PLAY_VOICE) -- 是否开启游戏内的语音
IS_SHOW_HEALTH_TIP = ServerConfigManager.IsSettingActive(ServerConfigManager.SettingConfig.IS_SHOW_HEALTH_TIP) -- 是否开启游戏内的语音
end
-- 判断设置是否激活
function ServerConfigManager.IsSettingActive(settingType)
local s_isActive = "Setting."..settingType..".isActive"
local s_versionCode = "Setting."..settingType..".versionCode"
local isActive = ServerConfigManager.GetConfigInfo(s_isActive)
if isActive and isActive == "1" then -- 激活
if not AppConst.isSDK then
return true
end
local vc = AndroidDeviceInfo.Instance:GetVersionCode()
if vc >= tonumber(ServerConfigManager.GetConfigInfo(s_versionCode)) then --符合包版本
return true
end
end
return false
end
function ServerConfigManager.GetSettingValue(settingType)
if ServerConfigManager.IsSettingActive(settingType) then
local s_value = "Setting."..settingType..".value"
local value = ServerConfigManager.GetConfigInfo(s_value)
return value
end
end
-- 获取version信息老版本信息新版中用于获取版本号包版本号
function ServerConfigManager.GetVersionInfo(key)
local v = ServerConfigManager.GetConfigInfo(key)
if not v then
v = VersionManager:GetVersionInfo(key)
end
return v
end
--
function ServerConfigManager.GetConfigInfo(key)
-- 包版本大于启用的版本使用新的配置
if not AppConst.isSDK or AndroidDeviceInfo.Instance:GetVersionCode() >= _ActiveCode then
if not ConfigMgr then
ConfigMgr=App.ConfigMgr
end
local s = ConfigMgr:GetConfigInfo(key)
--LogYellow(key.."|"..tostring(s))
return s
end
end
function ServerConfigManager.GetSDKVersionCode()
if AppConst.isSDK then
return AndroidDeviceInfo.Instance:GetVersionCode()
end
return 9999
end