예제 #1
0
    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);
    }
예제 #2
0
    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);
    }