private void SaveAssetHashFiles(string data_path) { XDirectory.CreateIfNotExists(data_path); //mainPackage string mainPackageHashPath = Path.Combine(data_path, VFSConst.AssetsHashFileName); var main_obj = new FilesHashBook(); main_obj.Files = asset_hash_book.ToArray(); XConfig.SaveJson(main_obj, mainPackageHashPath, AssetLoadType.SystemIO); string extGroupHashFolderPath = Path.Combine(data_path, VFSConst.ExtensionGroupAssetsHashFolderName); XDirectory.DeleteIfExists(extGroupHashFolderPath, true); Directory.CreateDirectory(extGroupHashFolderPath); //各个扩展组 foreach (var item in dict_asset_hash_book) { string g_path = Path.Combine(extGroupHashFolderPath, item.Key + ".json"); var obj = new FilesHashBook(); obj.Files = item.Value.ToArray(); XConfig.SaveJson(obj, g_path, AssetLoadType.SystemIO); } }
/// <summary> /// 制作 AssetBundles Hash File , /// </summary> /// <param name="package_root_path">packages根目录</param> /// <param name="folder_path">当前直接能索引到assetbundle name的目录</param> /// <param name="assetbundleNames"></param> public void MakeAssetBundleFilesHash(string package_root_path, string folder_path, List <string> assetbundleNames) { List <FilesHashBook.FileHash> Infos = new List <FilesHashBook.FileHash>(); foreach (var ab in assetbundleNames) { var full_path = Path.Combine(folder_path, ab); if (File.Exists(full_path)) { var hashInfo = new FilesHashBook.FileHash(); hashInfo.p = ab; hashInfo.h = XFile.GetMD5(full_path, true); Infos.Add(hashInfo); } } var hashbook = new FilesHashBook(); hashbook.Files = Infos.ToArray(); string save_path = base.GetAssetBundleHashsFilePath(package_root_path); XConfig.SaveJson(hashbook, save_path, AssetLoadType.SystemIO); }
public void SetVirtualDiskFileHash(FilesHashBook hashbook) { base.FilesHash_VirtualDisk = hashbook; }