public List <AssetbundleJsonData> CompareMD(AssetbundleJsonMap cdn, AssetbundleJsonMap map2) { List <AssetbundleJsonData> updateFiles = new List <AssetbundleJsonData>(); //long length = 0; for (int i = 0; i < cdn.arrayRes.Length; i++) { AssetbundleJsonData data = cdn.arrayRes[i]; AssetbundleJsonData local = map2.GetJsonData(data.resName); if (local == null) { //length += data.length; updateFiles.Add(data); } else if (data.hashCode == local.hashCode) { } else { updateFiles.Add(data); //length += data.length; } } return(updateFiles); }
private void OnDonwloadResFinish(WWW www, AssetbundleJsonData json) { bool success = string.IsNullOrEmpty(www.error); byte[] data = www.bytes; if (success) { if (json.resName.Contains("version.dat")) { tip = " 忽略version.dat "; Debug.LogError(tip); } else { SafeWriteFileInPersistent(json.resName, data); } download++; if (download == updateFiles.Count) { StartCoroutine(DoLastJob()); } } else { UIMessageBoxHelper.onShow0("error: 801"); } //else //{ // downFileCount--; //} }
int Sort(AssetbundleJsonData l, AssetbundleJsonData r) { if (l.length > r.length) { return(-1); } else if (l.length < r.length) { return(1); } else { return(0); } }
public void AddJob(string resURL, MutilDownloadCallback callback, AssetbundleJsonData json) { bool find = false; foreach (var k in jobs) { if (k.url == resURL) { find = true; } } if (!find) { jobs.Add(new Job(resURL, callback, json)); } }
public static List <AssetbundleJsonData> GetMD5ForFolder(string folder, string relative) { List <AssetbundleJsonData> data = new List <AssetbundleJsonData>(); string[] files = Directory.GetFiles(folder, "*", SearchOption.AllDirectories); EditorUtility.DisplayProgressBar("生成MD5", "...", 0); int i = 0; foreach (string file in files) { bool find = false; foreach (var k in keyNotInclude) { if (Path.GetFileName(file) == k) { find = true; } } if (find) { continue; } string md5 = ResCommon.GetFileMD5(file); //Debug.Log("MD5 :" + file + ": " + resFolder); string ffile = file.Replace("\\", "/"); string fileName = ffile.Replace(relative + "/", ""); //Debug.Log("MD5 :" + fileName); FileInfo fileInfo = new FileInfo(file); AssetbundleJsonData jData = new AssetbundleJsonData(fileName, md5, fileInfo.Length); i++; EditorUtility.DisplayProgressBar("生成MD5", file, (float)i / (float)files.Length); data.Add(jData); } EditorUtility.ClearProgressBar(); return(data); }
public void SetJsonData(string resName, AssetbundleJsonData resData) { bool exist = false; List <AssetbundleJsonData> listRes = new List <AssetbundleJsonData>(arrayRes); for (int i = 0; i < listRes.Count; i++) { AssetbundleJsonData data = listRes[i]; if (data.resName == resName) { listRes[i] = resData; exist = true; } } if (!exist) { listRes.Add(resData); } arrayRes = listRes.ToArray(); }
public Job(string url, MutilDownloadCallback callback, AssetbundleJsonData json) { this.url = url; this.callback = callback; this.data = json; }