100 lines
2.9 KiB
Lua
100 lines
2.9 KiB
Lua
local Platform = {}
|
||
|
||
local bfGateInfo = CS.BF.BFPlatform.GetCurrentGateInfo()
|
||
Platform.bfGateInfo = bfGateInfo
|
||
|
||
---- 获取包名
|
||
function Platform:getIdentifier()
|
||
return CS.UnityEngine.Application.identifier
|
||
end
|
||
|
||
---- 是否是内网包
|
||
function Platform:getIsDevChannel()
|
||
return CS.BF.BFPlatform.IsDevChannel()
|
||
end
|
||
|
||
---- 是否是release包
|
||
function Platform:getIsReleaseChannel()
|
||
return CS.BF.BFPlatform.IsReleaseChannel()
|
||
end
|
||
|
||
---- 是否是发布渠道
|
||
function Platform:getIsPublishChannel()
|
||
return CS.BF.BFPlatform.IsPublishChannel()
|
||
end
|
||
|
||
---- 获取主链接域名
|
||
function Platform:getMainDomain()
|
||
return bfGateInfo.mainDomain
|
||
end
|
||
|
||
---- 获取主链接端口
|
||
function Platform:getMainPort()
|
||
return bfGateInfo.mainPort
|
||
end
|
||
|
||
-- 平台
|
||
function Platform:getPlatform()
|
||
if self._platform then
|
||
return self._platform
|
||
end
|
||
if CS.UnityEngine.Application.platform == CS.UnityEngine.RuntimePlatform.Android then
|
||
self._platform = "Android"
|
||
elseif CS.UnityEngine.Application.platform == CS.UnityEngine.RuntimePlatform.IPhonePlayer then
|
||
self._platform = "iOS"
|
||
elseif CS.UnityEngine.Application.platform == CS.UnityEngine.RuntimePlatform.OSXEditor then
|
||
self._platform = "Mac"
|
||
elseif CS.UnityEngine.Application.platform == CS.UnityEngine.RuntimePlatform.OSXPlayer then
|
||
self._platform = "Mac"
|
||
elseif CS.UnityEngine.Application.platform == CS.UnityEngine.RuntimePlatform.WindowsEditor then
|
||
self._platform = "Windows"
|
||
elseif CS.UnityEngine.Application.platform == CS.UnityEngine.RuntimePlatform.WindowsPlayer then
|
||
self._platform = "Windows"
|
||
else
|
||
self._platform = "Unknow"
|
||
end
|
||
return self._platform
|
||
end
|
||
|
||
-- 获取当前版本号
|
||
function Platform:getClientVersion()
|
||
if self.clientVersion == nil then
|
||
self.clientVersion = CS.BF.BFMain.Instance.GameLaunchMgr:GetCurrentVersion()
|
||
end
|
||
return self.clientVersion
|
||
end
|
||
|
||
-- 获取并处理当前版本号 例:1.3.2 => 1*1000000 + 3 * 1000 + 2 = 1003002
|
||
function Platform:getClientVersionNum()
|
||
local version = Platform:getClientVersion()
|
||
local versionStrs = string.split(version, ".")
|
||
local versionNum1 = tonumber(versionStrs[1])
|
||
local versionNum2 = tonumber(versionStrs[2])
|
||
local versionNum3 = tonumber(versionStrs[3])
|
||
|
||
return versionNum1 * 1000000 + versionNum2 * 1000 + versionNum3
|
||
end
|
||
|
||
function Platform:isIosPlatform()
|
||
return self:getPlatform() == "iOS"
|
||
end
|
||
|
||
function Platform:isAndroidPlatform()
|
||
return self:getPlatform() == "Android"
|
||
end
|
||
|
||
-- 联网需求后端需要的平台字符串
|
||
function Platform:getPlatformStr()
|
||
if self.platformStr == nil then
|
||
if self:isIosPlatform() then
|
||
self.platformStr = "IOS"
|
||
elseif self:isAndroidPlatform() then
|
||
self.platformStr = "Android"
|
||
else
|
||
self.platformStr = "Unity"
|
||
end
|
||
end
|
||
return self.platformStr
|
||
end
|
||
|
||
return Platform |