private BaseCallback BuildCB(string relePath) { Utils.SB.Append(UnityUtil.StreamingAssetsPath); Utils.SB.Append(relePath); string path = Utils.SB.ToString(); Utils.ClearSB(); BaseCallback cb = new BaseCallback(); cb.OnStart = () => { Action <byte[]> onSuccess = (bs) => { //读取到stream中的bundle后存到persist中 Utils.SB.Append(UnityUtil.PersistentPath); Utils.SB.Append(relePath); string bundlePath = Utils.SB.ToString(); string parentFolderPath = FileHelper.GetDirectorName(bundlePath); FileHelper.CreateFolder(parentFolderPath); //LogMgr.I("UpdateMgr", "BuildCB", "解压资源成功 原始路径:"+ path+" 目标路径:" + bundlePath+" 文件夹路径:"+ parentFolderPath, BeShowLog); FileHelper.WriteBytes2File_Create(bundlePath, bs); Utils.SB.Clear(); cb.End(); }; Action <string> onFaile = (error) => { LogMgr.E("UpdateMgr", "BuildCB", "解压资源 原始路径:" + path + "失败,解压中断", BeShowLog); }; //LogMgr.I("UpdateMgr", "BuildCB", "开始解压资源:" + path, BeShowLog); FileHelper.GetIns().ReadBytesFromApkFile(path, onSuccess, onFaile); }; return(cb); }
private BaseCallback LoadRole(PlayerInfoStruct roleInfo) { BaseCallback cb = new BaseCallback(); cb.OnStart = () => { Listener <string> onloadOver = (id) => { LogMgr.I("StageScnMgr", "LoadRole.cb.OnStart.onloadOver", " id:" + id, BeShowLog); cb.End(); }; TActor.Create(roleInfo, onloadOver); }; return(cb); }