private byte[] LoadStreamAsset(string path) { var fullPath = Application.streamingAssetsPath + "/" + path; byte[] data = null; if (fullPath.Contains("://")) { if (!DPlatform.IsEditorPlatform() && DPlatform.IsAndroidPlatform()) { data = DodLibUtil.GetDodLib().LoadStreamAssetFile(fullPath); } } else { data = AssetBundleUtil.ReadFile(fullPath); } return(data); }
public IEnumerator CheckUpdate(bool repairClient, StartupUI startUI) { m_svrVerInfo = null; //获取当前的版本 string fullUrl = DPlatform.GetCheckVersionUrl(repairClient); BLogger.Info("version check:{0}", fullUrl); WWWEx wwwEx = WWWEx.Init(15f); yield return(StartCoroutine(wwwEx.Request(fullUrl))); if (wwwEx.isTimeOut) { AssetVersionMgr.Instance.error = StartupTextConfigMgr.Instance.GetText(StartupTextDefine.ID_STARTUP_CHECK_UPDATE_TIMEOUT); BLogger.Warning("url reueqest timeout: {0}", fullUrl); yield break; } WWW www = wwwEx.result; if (www.error != null) { BLogger.Warning("check version update error: " + www.error); string wwwerror = www.error; www.Dispose(); AssetVersionMgr.Instance.error = StartupTextConfigMgr.Instance.GetText(StartupTextDefine.ID_STARTUP_CHECK_UPDATE_WWW_ERROR, wwwerror); yield break; } if (startUI != null) { startUI.ShowText(StartupTextConfigMgr.Instance.GetText(StartupTextDefine.ID_STARTUP_GAME_ETNERING)); } Dictionary <string, object> verJson = (Dictionary <string, object>)MiniJSON.Json.Deserialize(www.text); if (verJson == null || verJson.Count == 0) { BLogger.Warning("parse version json data error: {0}", www.text); AssetVersionMgr.Instance.error = StartupTextConfigMgr.Instance.GetText(StartupTextDefine.ID_STARTUP_CHECK_UPDATE_JSON_ERROR, 1); // DBugly.ReportException("json data error", "request error url:" + fullUrl, "parse version json data error: " + www.text); www.Dispose(); yield break; } try { m_svrVerInfo = ParseVerInfo(verJson); } catch (Exception e) { BLogger.Warning("parse ver info failed:{0}", e.ToString()); DBugly.ReportException("parse ver info", "request error url:" + fullUrl, "parse ver info failed: " + e.ToString()); AssetVersionMgr.Instance.error = StartupTextConfigMgr.Instance.GetText(StartupTextDefine.ID_STARTUP_CHECK_UPDATE_JSON_ERROR, 2); m_svrVerInfo = null; } www.Dispose(); }