hch
7 天以前 9b09f189e2830126a6d2f45dcba6b64c316960d0
0312 增加下载模块
7个文件已修改
2个文件已删除
4 文件已重命名
371 ■■■■ 已修改文件
Main/Core/GameEngine/Launch/CheckAssetValidTask.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/AssetVersion/AssetVersionUtility.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/AssetVersion/DownLoadAndDiscompressHotTask.cs 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/AssetVersion/DownLoadAndDiscompressHotTask.cs.meta 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/AssetVersion/DownLoadWin.cs 248 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/AssetVersion/DownloadHotMgr.cs 35 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/AssetVersion/DownloadHotMgr.cs.meta 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/AssetVersion/InGameDownLoad.cs 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/AssetVersion/InGameDownLoadWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/ClientVersion/VersionUtility.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/GeneralConfig/ConstDefine.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/GeneralConfig/ConstDefine.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Login/LoginWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/Core/GameEngine/Launch/CheckAssetValidTask.cs
@@ -26,7 +26,7 @@
        {
            var remoteURL = StringUtility.Contact(VersionUtility.Instance.versionInfo.GetResourcesURL(VersionConfig.Get().branch), Language.fixPath, "/config/PriorBundle.txt");
            var localURL = StringUtility.Contact(ResourcesPath.Instance.ExternalStorePath, "config/PriorBundle.txt");
            var downloadTask = new DownloadTask(remoteURL, localURL);
            var downloadTask = new DownloadHotTask(remoteURL, localURL);
            downloadTask.BeginDownload(AssetVersionUtility.OnDownLoadPriorBundle);
            //AssetVersionUtility.GetAssetVersionFile();
Main/System/AssetVersion/AssetVersionUtility.cs
@@ -68,7 +68,7 @@
    }
    public static void OnDownLoadPriorBundle(DownloadTask task)
    public static void OnDownLoadPriorBundle(DownloadHotTask task)
    {
        if (task.IsDone)
        {
@@ -166,7 +166,7 @@
        if (_prior)
        {
            m_PriorAssetDownLoadDone = false;
            DownLoadAndDiscompressTask.Instance.Prepare(priorDownLoadAssetVersions, () => { m_PriorAssetDownLoadDone = true; });
            DownLoadAndDiscompressHotTask.Instance.Prepare(priorDownLoadAssetVersions, () => { m_PriorAssetDownLoadDone = true; });
        }
        else
        {
Main/System/AssetVersion/DownLoadAndDiscompressHotTask.cs
File was renamed from Main/System/AssetVersion/DownLoadAndDiscompressTask.cs
@@ -6,13 +6,13 @@
using Cysharp.Threading.Tasks;
public class DownLoadAndDiscompressTask : Singleton<DownLoadAndDiscompressTask>
public class DownLoadAndDiscompressHotTask : Singleton<DownLoadAndDiscompressHotTask>
{
    public const int BYTE_PER_KILOBYTE = 1024;
    public const int BYTE_PER_MILLIONBYTE = 1048576;
    public float progress { get { return Mathf.Clamp01((float)DownloadMgr.Instance.DownloadedBytes / totalSize); } }
    public float progress { get { return Mathf.Clamp01((float)DownloadHotMgr.Instance.DownloadedBytes / totalSize); } }
    List<AssetVersion> tasks = new List<AssetVersion>();
    public bool isDone { get { return step == Step.Completed; } }
@@ -73,9 +73,7 @@
        if (totalSize > BYTE_PER_MILLIONBYTE)
        {
            //  TODO YYL
            // UIManager.Instance.OpenWindow<DownLoadWin>();
            // WindowCenter.Instance.OpenFromLocal<DownLoadWin>();
            UIManager.Instance.OpenWindow<DownLoadWin>();
        }
        else
        {
@@ -88,7 +86,7 @@
    {
        step = Step.DownLoad;
        Co_StartDownLoad();
        Co_StartDownLoad().Forget();
        // SnxxzGame.Instance.StartCoroutine(Co_StartDownLoad());
        // TODO YYL
@@ -99,18 +97,18 @@
    {
        while (tasks.Count > 0)
        {
            DownloadMgr.Instance.Prepare();
            DownloadHotMgr.Instance.Prepare();
            for (int i = 0; i < tasks.Count; i++)
            {
                var assetVersion = tasks[i];
                var remoteURL = StringUtility.Contact(VersionUtility.Instance.versionInfo.GetResourcesURL(VersionConfig.Get().branch), Language.fixPath, "/", assetVersion.relativePath);
                var localURL = StringUtility.Contact(ResourcesPath.Instance.ExternalStorePath, assetVersion.relativePath);
                DownloadMgr.Instance.AddTask(new DownloadTask(remoteURL, localURL));
                DownloadHotMgr.Instance.AddTask(new DownloadHotTask(remoteURL, localURL));
            }
            DownloadMgr.Instance.Begin();
            DownloadHotMgr.Instance.Begin();
            while (!DownloadMgr.Instance.IsFinished)
            while (!DownloadHotMgr.Instance.IsFinished)
            {
                await UniTask.DelayFrame(1);
            }
@@ -136,8 +134,8 @@
        step = Step.Completed;
        UIManager.Instance.OpenWindow<DownLoadWin>();
        UIManager.Instance.OpenWindow<InGameDownLoadWin>();
        UIManager.Instance.CloseWindow<DownLoadWin>();
        UIManager.Instance.CloseWindow<InGameDownLoadWin>();
        if (downLoadOkCallBack != null)
        {
Main/System/AssetVersion/DownLoadAndDiscompressHotTask.cs.meta
Main/System/AssetVersion/DownLoadWin.cs
@@ -9,146 +9,144 @@
using UnityEngine;
using UnityEngine.UI;
    public class DownLoadWin : UIBase
public class DownLoadWin : UIBase
{
    [SerializeField] RectTransform m_ContainerHint;
    [SerializeField] RichText m_Content;
    [SerializeField] Button m_Confirm;
    [SerializeField] Button m_Cancel;
    [SerializeField] Transform m_ContainerProgress;
    [SerializeField] SmoothSlider m_ProgressSlider;
    [SerializeField] Text m_Progress;
    [SerializeField] Text m_DownLoadSpeed;
    float timer = 1f;
    protected override void InitComponent()
    {
        [SerializeField] RectTransform m_ContainerHint;
        [SerializeField] RichText m_Content;
        [SerializeField] Button m_Confirm;
        [SerializeField] Button m_Cancel;
        m_Confirm.AddListener(Confirm);
        m_Cancel.AddListener(Cancel);
    }
        [SerializeField] Transform m_ContainerProgress;
        [SerializeField] SmoothSlider m_ProgressSlider;
        [SerializeField] Text m_Progress;
        [SerializeField] Text m_DownLoadSpeed;
        [SerializeField] Transform awardObj;
        float timer = 1f;
        protected override void InitComponent()
    protected override void OnPreOpen()
    {
        timer = 1f;
        if (Application.internetReachability == NetworkReachability.ReachableViaLocalAreaNetwork)
        {
            m_Confirm.AddListener(Confirm);
            m_Cancel.AddListener(Cancel);
            DownLoadAndDiscompressHotTask.Instance.StartDownLoad();
        }
        protected override void OnPreOpen()
        OnDownLoadStepChange(DownLoadAndDiscompressHotTask.Instance.step);
    }
    protected override void OnOpen()
    {
        DownLoadAndDiscompressHotTask.Instance.downLoadStepChangeEvent += OnDownLoadStepChange;
    }
    protected override void OnPreClose()
    {
        DownLoadAndDiscompressHotTask.Instance.downLoadStepChangeEvent -= OnDownLoadStepChange;
    }
    protected override void OnClose()
    {
    }
    private void OnDownLoadStepChange(DownLoadAndDiscompressHotTask.Step _step)
    {
        switch (_step)
        {
            timer = 1f;
            if (Application.internetReachability == NetworkReachability.ReachableViaLocalAreaNetwork)
            case DownLoadAndDiscompressHotTask.Step.DownLoadPrepared:
                m_ContainerHint.SetActive(true);
                m_ContainerProgress.SetActive(false);
                DisplayHintContent();
                break;
            case DownLoadAndDiscompressHotTask.Step.DownLoad:
                m_ContainerHint.SetActive(false);
                m_ContainerProgress.SetActive(true);
                DisplayHintContent();
                break;
        }
    }
    protected void LateUpdate()
    {
        var step = DownLoadAndDiscompressHotTask.Instance.step;
        if (step == DownLoadAndDiscompressHotTask.Step.DownLoad)
        {
            timer += Time.deltaTime;
            if (timer > 1f)
            {
                DownLoadAndDiscompressTask.Instance.StartDownLoad();
            }
                timer -= 1f;
                m_ProgressSlider.value = DownLoadAndDiscompressHotTask.Instance.progress;
                var totalSizeString = ((float)DownLoadAndDiscompressHotTask.Instance.totalSize / DownLoadAndDiscompressHotTask.BYTE_PER_MILLIONBYTE).ToString("f1");
                var downLoadedSize = Mathf.Clamp(DownloadHotMgr.Instance.DownloadedBytes, 0, DownLoadAndDiscompressHotTask.Instance.totalSize - 1);
                var downLoadedSizeString = ((float)downLoadedSize / DownLoadAndDiscompressHotTask.BYTE_PER_MILLIONBYTE).ToString("f1");
            OnDownLoadStepChange(DownLoadAndDiscompressTask.Instance.step);
                m_Progress.text = Language.GetFromLocal(13, StringUtility.Contact(downLoadedSizeString, "M", "/", totalSizeString, "M"));
            awardObj.SetActive(InGameDownLoad.Instance.IsShowDownloadAward());
        }
        protected override void OnOpen()
        {
            DownLoadAndDiscompressTask.Instance.downLoadStepChangeEvent += OnDownLoadStepChange;
        }
        protected override void OnPreClose()
        {
            DownLoadAndDiscompressTask.Instance.downLoadStepChangeEvent -= OnDownLoadStepChange;
        }
        protected override void OnClose()
        {
        }
        private void OnDownLoadStepChange(DownLoadAndDiscompressTask.Step _step)
        {
            switch (_step)
            {
                case DownLoadAndDiscompressTask.Step.DownLoadPrepared:
                    m_ContainerHint.SetActive(true);
                    m_ContainerProgress.SetActive(false);
                    DisplayHintContent();
                    break;
                case DownLoadAndDiscompressTask.Step.DownLoad:
                    m_ContainerHint.SetActive(false);
                    m_ContainerProgress.SetActive(true);
                    DisplayHintContent();
                    break;
            }
        }
        protected void LateUpdate()
        {
            var step = DownLoadAndDiscompressTask.Instance.step;
            if (step == DownLoadAndDiscompressTask.Step.DownLoad)
            {
                timer += Time.deltaTime;
                if (timer > 1f)
                if (downLoadedSize >= DownLoadAndDiscompressHotTask.Instance.totalSize)
                {
                    timer -= 1f;
                    m_ProgressSlider.value = DownLoadAndDiscompressTask.Instance.progress;
                    var totalSizeString = ((float)DownLoadAndDiscompressTask.Instance.totalSize / DownLoadAndDiscompressTask.BYTE_PER_MILLIONBYTE).ToString("f1");
                    var downLoadedSize = Mathf.Clamp(DownloadMgr.Instance.DownloadedBytes, 0, DownLoadAndDiscompressTask.Instance.totalSize - 1);
                    var downLoadedSizeString = ((float)downLoadedSize / DownLoadAndDiscompressTask.BYTE_PER_MILLIONBYTE).ToString("f1");
                    m_Progress.text = Language.GetFromLocal(13, StringUtility.Contact(downLoadedSizeString, "M", "/", totalSizeString, "M"));
                    if (downLoadedSize >= DownLoadAndDiscompressTask.Instance.totalSize)
                    {
                        m_DownLoadSpeed.text = StringUtility.Contact(UnityEngine.Random.Range(5, 10), "KB/S");
                    }
                    else
                    {
                        m_DownLoadSpeed.text = DownloadMgr.Instance.SpeedFormat;
                    }
                    m_DownLoadSpeed.text = StringUtility.Contact(UnityEngine.Random.Range(5, 10), "KB/S");
                }
                else
                {
                    m_DownLoadSpeed.text = DownloadHotMgr.Instance.SpeedFormat;
                }
            }
        }
        private void DisplayHintContent()
        {
            var step = DownLoadAndDiscompressTask.Instance.step;
            switch (step)
            {
                case DownLoadAndDiscompressTask.Step.DownLoadPrepared:
                    var totalCount = DownLoadAndDiscompressTask.Instance.totalCount;
                    var totalSize = DownLoadAndDiscompressTask.Instance.totalSize;
                    if (totalSize > DownLoadAndDiscompressTask.BYTE_PER_MILLIONBYTE)
                    {
                        var sizeDescription = ((float)totalSize / DownLoadAndDiscompressTask.BYTE_PER_MILLIONBYTE).ToString("f1");
                        m_Content.text = Language.GetFromLocal(DownLoadAndDiscompressTask.Instance.restartApp ? 1 : 2, totalCount, sizeDescription);
                    }
                    else
                    {
                        var sizeDescription = ((float)totalSize / DownLoadAndDiscompressTask.BYTE_PER_KILOBYTE).ToString("f1");
                        m_Content.text = Language.GetFromLocal(DownLoadAndDiscompressTask.Instance.restartApp ? 11 : 12, totalCount, sizeDescription);
                    }
                    break;
                case DownLoadAndDiscompressTask.Step.DownLoad:
                    m_Content.text = Language.GetFromLocal(3);
                    break;
            }
        }
        private void Confirm()
        {
            timer = 1f;
            var step = DownLoadAndDiscompressTask.Instance.step;
            switch (step)
            {
                case DownLoadAndDiscompressTask.Step.DownLoadPrepared:
                    DownLoadAndDiscompressTask.Instance.StartDownLoad();
                    break;
            }
        }
        private void Cancel()
        {
            Application.Quit();
        }
    }
    private void DisplayHintContent()
    {
        var step = DownLoadAndDiscompressHotTask.Instance.step;
        switch (step)
        {
            case DownLoadAndDiscompressHotTask.Step.DownLoadPrepared:
                var totalCount = DownLoadAndDiscompressHotTask.Instance.totalCount;
                var totalSize = DownLoadAndDiscompressHotTask.Instance.totalSize;
                if (totalSize > DownLoadAndDiscompressHotTask.BYTE_PER_MILLIONBYTE)
                {
                    var sizeDescription = ((float)totalSize / DownLoadAndDiscompressHotTask.BYTE_PER_MILLIONBYTE).ToString("f1");
                    m_Content.text = Language.GetFromLocal(DownLoadAndDiscompressHotTask.Instance.restartApp ? 1 : 2, totalCount, sizeDescription);
                }
                else
                {
                    var sizeDescription = ((float)totalSize / DownLoadAndDiscompressHotTask.BYTE_PER_KILOBYTE).ToString("f1");
                    m_Content.text = Language.GetFromLocal(DownLoadAndDiscompressHotTask.Instance.restartApp ? 11 : 12, totalCount, sizeDescription);
                }
                break;
            case DownLoadAndDiscompressHotTask.Step.DownLoad:
                m_Content.text = Language.GetFromLocal(3);
                break;
        }
    }
    private void Confirm()
    {
        timer = 1f;
        var step = DownLoadAndDiscompressHotTask.Instance.step;
        switch (step)
        {
            case DownLoadAndDiscompressHotTask.Step.DownLoadPrepared:
                DownLoadAndDiscompressHotTask.Instance.StartDownLoad();
                break;
        }
    }
    private void Cancel()
    {
        Application.Quit();
    }
}
Main/System/AssetVersion/DownloadHotMgr.cs
File was renamed from Main/System/AssetVersion/DownloadMgr.cs
@@ -10,7 +10,7 @@
using Cysharp.Threading.Tasks;
public class DownloadMgr : SingletonMonobehaviour<DownloadMgr>
public class DownloadHotMgr : SingletonMonobehaviour<DownloadHotMgr>
{
    #region 配置
    public static int MaxRetryTimes = 5;//最大重试的次数
@@ -19,14 +19,14 @@
    #endregion
    #region 任务列表
    private Dictionary<string, DownloadTask> allTask = new Dictionary<string, DownloadTask>();    //所有任务组
    private Queue<DownloadTask> waitTask = new Queue<DownloadTask>();    //当前等待下载的任务
    private Dictionary<string, DownloadTask> downloadTask = new Dictionary<string, DownloadTask>();    //当前正在下载的任务
    private Dictionary<string, DownloadHotTask> allTask = new Dictionary<string, DownloadHotTask>();    //所有任务组
    private Queue<DownloadHotTask> waitTask = new Queue<DownloadHotTask>();    //当前等待下载的任务
    private Dictionary<string, DownloadHotTask> downloadTask = new Dictionary<string, DownloadHotTask>();    //当前正在下载的任务
    #endregion 任务列表
    private bool isBegin;
    private int startTickcount = 0;
    private Func<bool, DownloadTask, bool> onTaskCompleted;//文件下载完成回调,<是否全部完成,任务对象,return true:立即重试,false:到队尾重试>
    private Func<bool, DownloadHotTask, bool> onTaskCompleted;//文件下载完成回调,<是否全部完成,任务对象,return true:立即重试,false:到队尾重试>
    //总速度
    private float speed;
@@ -69,7 +69,7 @@
    }
    //添加任务
    public DownloadMgr AddTask(DownloadTask task)
    public DownloadHotMgr AddTask(DownloadHotTask task)
    {
        if (allTask.ContainsKey(task.Key))
        {
@@ -82,7 +82,7 @@
    }
    //准备下载,重置状态
    public DownloadMgr Prepare()
    public DownloadHotMgr Prepare()
    {
        Stop();
        this.onTaskCompleted = null;
@@ -99,7 +99,7 @@
    /// </summary>
    /// <param name="onTaskCompleted">任务结束回调</param>
    /// <returns></returns>
    public DownloadMgr Begin(Func<bool, DownloadTask, bool> onTaskCompleted = null)
    public DownloadHotMgr Begin(Func<bool, DownloadHotTask, bool> onTaskCompleted = null)
    {
        this.onTaskCompleted = onTaskCompleted;
        startTickcount = TimeUtility.AllSeconds;
@@ -145,7 +145,7 @@
    }
    // 任务下载完成
    private void OnTaskCompleted(DownloadTask task)
    private void OnTaskCompleted(DownloadHotTask task)
    {
        downloadTask.Remove(task.Key);
        if (task.IsDone)//下载成功
@@ -180,7 +180,7 @@
public class DownloadTask
public class DownloadHotTask
{
    //下载任务状态
    public enum TaskState
@@ -195,7 +195,7 @@
    public readonly string tempFile;//临时文件地址
    private readonly bool clearCache;//是否清除旧的下载缓存,(断点续传)
    public readonly object obj; //自定义对象
    private Action<DownloadTask> onCompleted;//下载完成回调
    private Action<DownloadHotTask> onCompleted;//下载完成回调
    private TaskState state;//下载状态
    public bool isStop;//下载被停止
@@ -230,7 +230,7 @@
    /// <param name="localUrl">本地保存地址</param>
    /// <param name="obj">自定义对象</param>
    /// <param name="clearCache">是否清除上次下载的缓存</param>
    public DownloadTask(string remoteUrl, string localUrl, object obj = null, bool clearCache = false)
    public DownloadHotTask(string remoteUrl, string localUrl, object obj = null, bool clearCache = false)
    {
        this.remoteUrl = remoteUrl;
        this.localFile = localUrl;
@@ -266,11 +266,11 @@
        if (IsWorking)
            return;
        Co_GetHeader();
        Co_GetHeader().Forget();
        // SnxxzGame.Instance.StartCoroutine(Co_GetHeader());
    }
    public bool BeginDownload(Action<DownloadTask> onCompleted)
    public bool BeginDownload(Action<DownloadHotTask> onCompleted)
    {
        if ((IsWorking && requestHeaderOk) || IsDone)//已经在下载任务中或已经下载完成了
            return false;
@@ -278,7 +278,7 @@
            failedTimes = 0;
        this.onCompleted = onCompleted;
        this.isStop = false;
        Co_DownloadFile();
        Co_DownloadFile().Forget();
        // SnxxzGame.Instance.StartCoroutine(Co_DownloadFile());
        return true;
    }
@@ -300,7 +300,7 @@
        Debug.LogFormat("开始获取头信息:{0}", remoteUrl);
        using (var www = UnityWebRequest.Head(remoteUrl))
        {
            www.timeout = DownloadMgr.TimeOut;
            www.timeout = DownloadHotMgr.TimeOut;
            await www.SendWebRequest();
            if (www.result == UnityWebRequest.Result.ConnectionError || www.result == UnityWebRequest.Result.ProtocolError)
            {
@@ -443,6 +443,7 @@
    private async UniTask Move(string sourceFile, string destFile)
    {
        var copyState = 0;//复制文件状态,0等待,1成功,2失败
        try
        {
@@ -464,6 +465,8 @@
        }
        else
            SetFailed("临时文件改名出错");
        await UniTask.CompletedTask;
    }
}
Main/System/AssetVersion/DownloadHotMgr.cs.meta
Main/System/AssetVersion/InGameDownLoad.cs
@@ -27,7 +27,7 @@
    public bool isDone { get { return state == State.Completed; } } //是否全部下载完成
    //窗口中显示的已下载大小
    public long showDownLoadedSize { get { return DownloadMgr.Instance.DownloadedBytes - backGroundDownLoadSizeRecord; } }
    public long showDownLoadedSize { get { return DownloadHotMgr.Instance.DownloadedBytes - backGroundDownLoadSizeRecord; } }
    public long showTotalSize { get { return totalSize - backGroundDownLoadSizeRecord; } }//窗口中显示的总大小
    public int showTotalCount { get { return totalCount - downLoadedCountRecord; } }//窗口中显示的总数量
    public int showOkCount { get { return okCount - downLoadedCountRecord; } }//窗口中显示的下载完成数量
@@ -91,7 +91,7 @@
    private void Awake()
    {
        DownloadMgr.MaxDownLoadTask = GetMaxTask();
        DownloadHotMgr.MaxDownLoadTask = GetMaxTask();
    }
    private void LateUpdate()
@@ -145,7 +145,7 @@
        okCount = 0;
        totalSize = 0;
        DownloadMgr.Instance.Prepare();
        DownloadHotMgr.Instance.Prepare();
        for (int i = 0; i < this.assets.Count; i++)
        {
@@ -164,7 +164,7 @@
            //添加下载任务
            var remoteURL = StringUtility.Contact(VersionUtility.Instance.versionInfo.GetResourcesURL(VersionConfig.Get().branch), Language.fixPath, "/", assetVersion.relativePath);
            var localURL = StringUtility.Contact(ResourcesPath.Instance.ExternalStorePath, assetVersion.relativePath);
            DownloadMgr.Instance.AddTask(new DownloadTask(remoteURL, localURL, assetVersion));
            DownloadHotMgr.Instance.AddTask(new DownloadHotTask(remoteURL, localURL, assetVersion));
        }
        state = State.None;
@@ -245,7 +245,7 @@
            case Dominant.Half:
                if (dominantState == Dominant.None)
                {
                    backGroundDownLoadSizeRecord = DownloadMgr.Instance.DownloadedBytes;
                    backGroundDownLoadSizeRecord = DownloadHotMgr.Instance.DownloadedBytes;
                    downLoadedCountRecord = okCount;
                }
                StartDownLoad();
@@ -254,7 +254,7 @@
            case Dominant.Whole:
                if (dominantState == Dominant.None)
                {
                    backGroundDownLoadSizeRecord = DownloadMgr.Instance.DownloadedBytes;
                    backGroundDownLoadSizeRecord = DownloadHotMgr.Instance.DownloadedBytes;
                    downLoadedCountRecord = okCount;
                    Pause();
                    state = State.Prepared;
@@ -265,8 +265,7 @@
                    state = State.Prepared;
                }
                dominantState = Dominant.Whole;
                UIManager.Instance.OpenWindow<InGameDownLoadWin>();
                // // WindowCenter.Instance.Open<InGameDownLoadWin>();
                // UIManager.Instance.OpenWindow<InGameDownLoadWin>();
                break;
        }
    }
@@ -277,7 +276,7 @@
        if (state == State.None || state == State.Prepared || state == State.Pause)
        {
            state = State.DownLoad;
            DownloadMgr.Instance.Begin(OnFileDownLoadCompleted);
            DownloadHotMgr.Instance.Begin(OnFileDownLoadCompleted);
        }
    }
@@ -286,13 +285,13 @@
    {
        if (state == State.DownLoad)
        {
            DownloadMgr.Instance.Stop();
            DownloadHotMgr.Instance.Stop();
            state = State.Pause;
        }
    }
    //文件下载完成回调
    private bool OnFileDownLoadCompleted(bool finished, DownloadTask task)
    private bool OnFileDownLoadCompleted(bool finished, DownloadHotTask task)
    {
        if (task.IsDone && task.obj is AssetVersion)
        {
Main/System/AssetVersion/InGameDownLoadWin.cs
@@ -39,7 +39,7 @@
            downLoadGo.SetListener(() => {
                downLoadGo.isOn = !downLoadGo.isOn;
                InGameDownLoad.Instance.downLoadGo = downLoadGo.isOn;
                DownloadMgr.MaxDownLoadTask = InGameDownLoad.Instance.GetMaxTask();
                DownloadHotMgr.MaxDownLoadTask = InGameDownLoad.Instance.GetMaxTask();
            });
        }
@@ -118,7 +118,7 @@
                    }
                    else
                    {
                        m_DownLoadSpeed.text = DownloadMgr.Instance.SpeedFormat;
                        m_DownLoadSpeed.text = DownloadHotMgr.Instance.SpeedFormat;
                    }
                }
            }
Main/System/ClientVersion/VersionUtility.cs
@@ -20,7 +20,7 @@
    public string androidRoot { get { return string.Empty;/*StringUtility.Contact(SDKUtils.Instance.DeviceRootPath, "/", VersionConfig.Get().bundleIdentifier);*/ } }
    public DownloadTask downloadTask;
    public DownloadHotTask downloadTask;
    private string versionUrl;
    public float progress
    {
@@ -199,11 +199,11 @@
        var remoteURL = GetApkRemoteUrl();
        var apkLocalUrl = GetApkLocalUrl();
        downloadTask = new DownloadTask(remoteURL, apkLocalUrl);
        downloadTask = new DownloadHotTask(remoteURL, apkLocalUrl);
        downloadTask.BeginDownload(OnDownLoadApkCompleted);
    }
    private void OnDownLoadApkCompleted(DownloadTask task)
    private void OnDownLoadApkCompleted(DownloadHotTask task)
    {
        if (task.IsDone)
        {
Main/System/GeneralConfig/ConstDefine.cs
File was deleted
Main/System/GeneralConfig/ConstDefine.cs.meta
File was deleted
Main/System/Login/LoginWin.cs
@@ -110,7 +110,7 @@
        firstOpenEnd = true;
        InGameDownLoad.Instance.downLoadGo = false;
        DownloadMgr.MaxDownLoadTask = InGameDownLoad.Instance.GetMaxTask();
        DownloadHotMgr.MaxDownLoadTask = InGameDownLoad.Instance.GetMaxTask();
    }
    protected override void OnPreClose()