//主资源更新检查 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 }
//资源完整性检查 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(); } }); }
/// <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()); }