コード例 #1
0
    public void SetState(DownloadResState state)
    {
        if (state == curState)
        {
            return;
        }

        LogMgr.I("DownloadRes", "SetState", "SetState切换状态到:" + state, BeShowLog);

        preState = curState;
        StateExit(preState);
        curState = state;

        switch (curState)
        {
        case DownloadResState.checkRemoteResVer:
            CheckRemoteResVer();
            break;

        case DownloadResState.compareResVerPersist_Remote:
            CompareResVerPersist_Remote();
            break;

        case DownloadResState.checkPersistDownloadingRes:
            CheckPersistDownloadingRes();
            break;

        case DownloadResState.pullRemoteResInfoList:
            PullRemoteResInfoList();
            break;

        case DownloadResState.readPersistResInfoList:
            ReadPersistResInfoList();
            break;

        case DownloadResState.compareResInfoListPersist_Remote:
            CompareResInfoListPersist_Remote();
            break;

        case DownloadResState.checkBreakpoint:
            CheckBreakpoint();
            break;

        case DownloadResState.filterUpdateResInfoList:
            FilterUpdateResInfoList();
            break;

        case DownloadResState.saveRemoteResVer2Downloading:
            SaveRemoteResVer2Downloading();
            break;

        case DownloadResState.startDownload:
            StartDownload();
            break;

        case DownloadResState.saveResInfoList2DownloadingFoler:
            SaveResInfoList2DownloadingFoler();
            break;

        case DownloadResState.generateDownloadOverFlagFile:
            GenerateDownloadOverFlagFile();
            break;

        case DownloadResState.downloadComplete:
            Clear();
            //这里的100即可是版本检测的100也可是下载的100
            Messenger.Broadcast <float>("updateLoadingProgress", 1f);
            UpdateMgr.GetIns().SetState(UpdateMgr.CheckVerState.copyRess);
            break;
        }
    }
コード例 #2
0
    private void StateExit(DownloadResState state)
    {
        switch (state)
        {
        case DownloadResState.checkRemoteResVer:
            Messenger.Broadcast <string>("updateLoadingText", "检查资源更新");
            Messenger.Broadcast <float>("updateLoadingProgress", 0.10f);
            break;

        case DownloadResState.compareResVerPersist_Remote:
            Messenger.Broadcast <float>("updateLoadingProgress", 0.20f);

            break;

        case DownloadResState.checkPersistDownloadingRes:

            Messenger.Broadcast <float>("updateLoadingProgress", 0.30f);

            break;

        case DownloadResState.pullRemoteResInfoList:
            Messenger.Broadcast <float>("updateLoadingProgress", 0.40f);
            break;

        case DownloadResState.readPersistResInfoList:
            Messenger.Broadcast <float>("updateLoadingProgress", 0.50f);
            break;

        case DownloadResState.compareResInfoListPersist_Remote:
            Messenger.Broadcast <float>("updateLoadingProgress", 0.60f);
            break;

        case DownloadResState.checkBreakpoint:
            Messenger.Broadcast <float>("updateLoadingProgress", 0.70f);
            break;

        case DownloadResState.filterUpdateResInfoList:
            Messenger.Broadcast <float>("updateLoadingProgress", 0.80f);
            break;

        case DownloadResState.saveRemoteResVer2Downloading:
            Messenger.Broadcast <float>("updateLoadingProgress", 1f);
            break;

        case DownloadResState.startDownload:
            Messenger.Broadcast <string>("updateLoadingText", "下载中");
            Messenger.Broadcast <float>("updateLoadingProgress", 0f);
            break;

        case DownloadResState.saveResInfoList2DownloadingFoler:

            Messenger.Broadcast <float>("updateLoadingProgress", 0.90f);

            break;

        case DownloadResState.generateDownloadOverFlagFile:

            Messenger.Broadcast <float>("updateLoadingProgress", 0.95f);

            break;

        case DownloadResState.downloadComplete:

            break;
        }
    }