private static Dictionary <string, BuildSampleInfo> LoadHistoryBundleData(string bundleDataFilePath) { string bundleData = BMUtility.LoadText(bundleDataFilePath); if (bundleData == null) { return(null); } JsonData jsonData = JsonMapper.ToObject(bundleData); Debug.Log("Load History Bundle Data:" + bundleData); Dictionary <string, BuildSampleInfo> buildInfos = new Dictionary <string, BuildSampleInfo>(); JsonData buildInfoJson = jsonData["bundles"]; for (int i = 0; i < buildInfoJson.Count; i++) { BuildSampleInfo buildInfo = new BuildSampleInfo() { bundleName = buildInfoJson[i]["bundleName"].ToString(), version = (int)buildInfoJson[i]["version"], assetPaths = BMUtility.JsonToArray(buildInfoJson[i], "assetPaths"), assetHashs = BMUtility.JsonToArray(buildInfoJson[i], "assetHashs"), }; buildInfos.Add(buildInfo.bundleName, buildInfo); } return(buildInfos); }
public void LoadBundleData(string bundleDataFile, bool useHashName) { _useHashName = useHashName; string path = getFilePath(bundleDataFile); Debug.LogFormat("Load bundle data:{0}", path); string bundleData = BMUtility.LoadText(path); Debug.Log(bundleData); JsonData jsonData = JsonMapper.ToObject(bundleData); //Debug.Log(bundleData); bundleInfos = new List <BundleInfo>(); bundleInfoDict = new Dictionary <string, BundleInfo>(); _bundleRequestDict = new Dictionary <string, AssetBundleCreateRequest>(); _suffix = "." + jsonData["suffix"];//Bundle 文件后缀 //_useHashName = (bool) jsonData["useHashName"];//是否使用Hash name JsonData bundleInfoJson = jsonData["bundles"]; for (int i = 0; i < bundleInfoJson.Count; i++) { BundleInfo bundleInfo = new BundleInfo() { bundleName = bundleInfoJson[i]["bundleName"].ToString(), buildMd5 = bundleInfoJson[i]["buildMd5"].ToString(), buildType = (BuildType)Enum.Parse(typeof(BuildType), bundleInfoJson[i]["buildType"].ToString()), assetPaths = BMUtility.JsonToArray(bundleInfoJson[i], "assetPaths"), dependencePaths = BMUtility.JsonToArray(bundleInfoJson[i], "dependencePaths"), }; bundleInfos.Add(bundleInfo); for (int j = 0; j < bundleInfo.assetPaths.Count; j++) { bundleInfoDict.Add(bundleInfo.assetPaths[j], bundleInfo); } } }