85 lines
2.6 KiB
C#
85 lines
2.6 KiB
C#
using Thousandto.Update.Delegate;
|
||
using Thousandto.Update.Enum;
|
||
using Thousandto.Update.Log;
|
||
using Thousandto.Update.Singleton;
|
||
using Thousandto.Update.Xml;
|
||
|
||
namespace Thousandto.Update.Trans
|
||
{
|
||
/// <summary>
|
||
/// UILoginFormScript的逻辑处理类
|
||
/// </summary>
|
||
public class TransManager : Singleton<TransManager>
|
||
{
|
||
//解析本地xml
|
||
public LocalVersionXml LocalXml;
|
||
|
||
//包内的app版本,比如在Resource目录,需要通过Resources.Load来获取
|
||
private string _inAppClientVersion;
|
||
//包内的分段版本号
|
||
private string _inAppBaseVersion;
|
||
//平台类型
|
||
private PlatformType _platformType;
|
||
//资源转移功能实例
|
||
private TransResource _transInstance;
|
||
//本地的localVersion.xml路径
|
||
private string _localXmlPath;
|
||
|
||
/// <summary>
|
||
/// 强制转移资源
|
||
/// 1. ios在进入游戏后有资源更新,会返回到更新界面做资源转移
|
||
/// </summary>
|
||
private bool _forceTrans = false;
|
||
|
||
public void SetTransData(string localXmlPath, string sourcePath, string storeDir, string inAppClientVersion, string inAppBaseVersion,
|
||
PlatformType type, TransResourceFinishCallback callback)
|
||
{
|
||
_localXmlPath = localXmlPath;
|
||
_inAppClientVersion = inAppClientVersion;
|
||
_inAppBaseVersion = inAppBaseVersion;
|
||
_platformType = type;
|
||
|
||
switch (_platformType)
|
||
{
|
||
case PlatformType.Android:
|
||
_transInstance = new TransAndroidResource();
|
||
break;
|
||
case PlatformType.IOS:
|
||
_transInstance = new TransIOSResource();
|
||
break;
|
||
case PlatformType.Windows:
|
||
_transInstance = new TransPCResource();
|
||
break;
|
||
default:
|
||
_transInstance = new TransPCResource();
|
||
break;
|
||
}
|
||
|
||
_transInstance.SetUnzipPath(sourcePath, storeDir, callback);
|
||
}
|
||
|
||
public void StartTrans()
|
||
{
|
||
{
|
||
_forceTrans = false;
|
||
if (_transInstance != null)
|
||
{
|
||
_transInstance.StartUnzipByThread();
|
||
}
|
||
else
|
||
UpdateLog.ERROR_LOG("_transInstance 没有初始化");
|
||
}
|
||
}
|
||
|
||
//强制做资源转移
|
||
public void SetForceTrans()
|
||
{
|
||
_forceTrans = true;
|
||
}
|
||
|
||
public bool IsForceTrans()
|
||
{
|
||
return _forceTrans;
|
||
}
|
||
}
|
||
} |