Beispiel #1
0
    //主资源更新检查
    private void DoMainResCheck()
    {
        _isForceCheck = false;
        //
        CheckIsFirstInstall();

        JW.Common.Log.LogD("<color=yellow>游戏主资源检查</color>");
        string defaultMainResUrlRoot = string.Empty;

#if JW_DEBUG
        defaultMainResUrlRoot = "https://gamehalldownloadcdn.scbczx.com/Arcade/IFS/Debug/";
#else
        defaultMainResUrlRoot = "https://gamehalldownloadcdn.scbczx.com/Arcade/IFS/Release/";
#endif

#if USE_PACK_RES
        //
        IFSSession mainResSession = new IFSSession();
        mainResSession.Name             = "MainResIFS" + _updateFailedCnt.ToString();
        mainResSession.FirstZipName     = "MainZip.bytes";
        mainResSession.FileListFileName = "MainFileList.json";
        mainResSession.SessionHandler   = OnIFSSessionCallback;
        string mainResUrlRoot = defaultMainResUrlRoot;
        //
        mainResSession.FirstZipURL     = string.Format("{0}{1}", mainResUrlRoot, "MainZip.bytes");
        mainResSession.FileListFileUrl = string.Format("{0}{1}", mainResUrlRoot, "MainFileList.json");
        mainResSession.NetFileRootUrl  = mainResUrlRoot;
        IFSService.GetInstance().BeginSession(mainResSession);
#else
        DoReadyEnterGame();
#endif
    }
Beispiel #2
0
    //资源完整性检查
    private void DoLocalResFullCheck()
    {
        _stateArg.Progress  = 0.0f;
        _stateArg.StateInfo = "...开始资源完整性检查...";
        EventService.GetInstance().SendEvent((uint)EventId.UpdateStateChange, _stateArg);

        IFSService.GetInstance().BeginLocalChecker("MainResCheck", "MainFileList.json", delegate(string checkName, IFSLocalCheckerResult result)
        {
            if (result.IsSuccess && result.LocalIsFull)
            {
                JW.Common.Log.LogD("---DoReadyEnterGame-----");
                DoReadyEnterGame();
            }
            else
            {
                _localCheckFailCnt++;
                if (_localCheckFailCnt > 10)
                {
                    _stateArg.Progress  = 0.0f;
                    _stateArg.StateInfo = "...资源完整性检查失败!等待重启 ...";
                    EventService.GetInstance().SendEvent((uint)EventId.UpdateStateChange, _stateArg);
                    ScheduleService.GetInstance().AddTimer(2000, false, this);
                    return;
                }
                //
                _stateArg.Progress  = 0.0f;
                _stateArg.StateInfo = "...资源完整性检查失败!重新更新 ...";
                EventService.GetInstance().SendEvent((uint)EventId.UpdateStateChange, _stateArg);
                //
                DoMainResCheck();
            }
        });
    }
Beispiel #3
0
 /// <summary>
 /// 初始化框架层
 /// </summary>
 /// <param name="initialize">初始化/反初始化</param>
 public static void InitFramework(bool initialize)
 {
     if (initialize)
     {
         NativeService.GetInstance();
         IFSService.GetInstance();
         AssetService.GetInstance();
         ScheduleService.GetInstance();
         EventService.GetInstance();
         StateService.GetInstance();
         HttpService.GetInstance();
         UGUIRoot.GetInstance();
         UIStateService.GetInstance();
         SceneService.GetInstance();
         UICommonService.GetInstance();
         AudioService.GetInstance();
         QualityService.GetInstance();
         NetworkService.GetInstance();
         NetAssetService.GetInstance();
     }
     else
     {
         IFSService.DestroyInstance();
         EventService.DestroyInstance();
         StateService.DestroyInstance();
         HttpService.DestroyInstance();
         UIStateService.DestroyInstance();
         SceneService.DestroyInstance();
         UICommonService.DestroyInstance();
         UGUIRoot.DestroyInstance();
         AudioService.DestroyInstance();
         NetworkService.DestroyInstance();
         NativeService.DestroyInstance();
         NetAssetService.DestroyInstance();
         QualityService.DestroyInstance();
         //最后
         ScheduleService.DestroyInstance();
         AssetService.GetInstance().Destroy();
         AssetService.DestroyInstance();
     }
 }
 public static IFSService GetIFSService()
 {
     return(IFSService.GetInstance());
 }