148 lines
5.1 KiB
Lua
148 lines
5.1 KiB
Lua
PackageManager = {}
|
||
local this = PackageManager
|
||
function PackageManager.Initialize()
|
||
this.PackageName = "test"
|
||
if AppConst.isSDK then
|
||
this.PackageName = AndroidDeviceInfo.Instance:GetPackageName()
|
||
end
|
||
LogGreen("当前包名为:"..this.PackageName)
|
||
|
||
-- 获取当前包配置名,没有就按本地配置
|
||
this.ConfigName = ServerConfigManager.GetSettingValue(ServerConfigManager.SettingConfig.PACKAGE_CONFIG)
|
||
if not this.ConfigName then
|
||
this.ConfigName = "LOCAL"
|
||
end
|
||
local PackagerConfig = ConfigManager.GetConfig(ConfigName.PackageConfig)
|
||
for _, config in ConfigPairs(PackagerConfig) do
|
||
if config.ConfigName == this.ConfigName then
|
||
this.config = config
|
||
break
|
||
end
|
||
end
|
||
|
||
-- 获取stream设置
|
||
if ServerConfigManager.IsSettingActive(ServerConfigManager.SettingConfig.IS_LOAD_STREAMING) then
|
||
resMgr:LoadStreamingText("PackConfig", function(config)
|
||
local json = require 'cjson'
|
||
local data = json.decode(config)
|
||
this.StreamConfig = data
|
||
end)
|
||
end
|
||
end
|
||
|
||
-- 获取包名
|
||
function PackageManager.GetPackageID()
|
||
-- 优先使用sdk自带的
|
||
if LoginManager.SdkSubChannel and LoginManager.SdkSubChannel ~= "" then
|
||
return LoginManager.SdkSubChannel
|
||
end
|
||
-- 否则使用配置的
|
||
if this.StreamConfig then
|
||
return this.StreamConfig.PackID
|
||
end
|
||
end
|
||
-- 获取子渠道包公告配置
|
||
function PackageManager.GetSubNoticeID()
|
||
if this.StreamConfig then
|
||
return this.StreamConfig.SubNoticeID
|
||
end
|
||
end
|
||
-- 获取包名
|
||
function PackageManager.GetPackageName()
|
||
return this.PackageName
|
||
end
|
||
-- 获取充值计费点字段
|
||
function PackageManager.GetRechargeField()
|
||
if this.config then
|
||
return this.config.RechargeField
|
||
end
|
||
end
|
||
-- 获取登录背景图
|
||
function PackageManager.GetLoginPanelBg()
|
||
if this.StreamConfig then
|
||
return this.StreamConfig.LoginPanelBG
|
||
end
|
||
if this.config then
|
||
return this.config.LoginPanelBg
|
||
end
|
||
end
|
||
-- 获取登录Logo
|
||
function PackageManager.GetLoginPanelLogo()
|
||
if this.StreamConfig then
|
||
return this.StreamConfig.LoginPanelLogo
|
||
end
|
||
if this.config then
|
||
return this.config.LoginLogo
|
||
end
|
||
end
|
||
-- 获取充值计费点字段
|
||
function PackageManager.GetCustomEventField()
|
||
if this.config then
|
||
return this.config.CustomEventField
|
||
end
|
||
end
|
||
-- 获取loading图list
|
||
function PackageManager.GetLoadingList()
|
||
if this.StreamConfig then
|
||
local list = string.split(this.StreamConfig.LoadingPanelBG, "#")
|
||
return list
|
||
end
|
||
if this.config then
|
||
local list = string.split(this.config.LoadingImgList, "#")
|
||
return list
|
||
end
|
||
end
|
||
-- 获取登录背景图
|
||
function PackageManager.GetBHContent()
|
||
if this.config then
|
||
return this.config.BHContent
|
||
end
|
||
end
|
||
|
||
function PackageManager.SetVideo(obj, bg)
|
||
obj:SetActive(false)
|
||
if ServerConfigManager.IsSettingActive(ServerConfigManager.SettingConfig.IS_PLAY_LOGIN_VIDEO) then
|
||
if this.StreamConfig and this.StreamConfig.LoginPanelVideoBG and this.StreamConfig.LoginPanelVideoBG ~= "" then
|
||
Log("加载Stream视频:"..tostring(this.StreamConfig.LoginPanelVideoBG))
|
||
if UIManager.IsOpen(UIName.LoginPanel) then
|
||
local video = obj:GetComponent("VideoPlayer")
|
||
video.url = UnityEngine.Application.streamingAssetsPath .."/Res/"..tostring(this.StreamConfig.LoginPanelVideoBG)..".mp4"
|
||
video:Play()
|
||
bg:DOFade(0, 2)
|
||
obj:SetActive(true)
|
||
end
|
||
elseif this.config and this.config.VideoName and this.config.VideoName ~= "" then
|
||
Log("加载视频:"..tostring(this.config.VideoName))
|
||
resMgr:PreLoadAssetAsync(this.config.VideoName, function(isOk)
|
||
if isOk then
|
||
if UIManager.IsOpen(UIName.LoginPanel) then
|
||
local video = obj:GetComponent("VideoPlayer")
|
||
-- video.url = ServerConfigManager.GetVersionInfo("resUrl") .. AppConst.PlatformPath .."/"..tostring(this.config.VideoName) ..".mp4"
|
||
-- video.clip = resMgr:LoadAsset(this.config.VideoName)
|
||
video.url = "file://" .. AppConst.PersistentDataPath .."/"..tostring(this.config.VideoName)
|
||
video:Play()
|
||
bg:DOFade(0, 2)
|
||
obj:SetActive(true)
|
||
end
|
||
else
|
||
Log("视频加载失败:"..this.config.VideoName)
|
||
end
|
||
end)
|
||
else
|
||
Log("包名:"..tostring(this.config.PackageName).."登录视频为空!")
|
||
end
|
||
end
|
||
end
|
||
|
||
function PackageManager.UnloadVideo()
|
||
if this.config then
|
||
if this.config.VideoName then
|
||
-- Log("卸载视频:"..tostring(this.config.VideoName))
|
||
-- resMgr:UnLoadAsset(this.config.VideoName)
|
||
end
|
||
end
|
||
end
|
||
|
||
function PackageManager.GetCCCode()
|
||
return ServerConfigManager.GetSettingValue(ServerConfigManager.SettingConfig.PACKAGE_CC_CODE) or ""
|
||
end |