From 700f396a6be8ca3b2d1e3df3c007eee3cbf29314 Mon Sep 17 00:00:00 2001 From: JieLing Date: Thu, 13 Aug 2020 19:30:16 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B5=84=E6=BA=90=E5=8A=A0=E5=AF=86=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=EF=BC=8C=E9=98=B2=E6=AD=A2=E4=BD=BF=E7=94=A8=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E8=8E=B7=E5=BE=97=E8=B5=84=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InspectTab/AssetBundleInspectTab.cs | 2 +- .../LuaFramework/Scripts/Common/LuaLoader.cs | 2 +- .../AssetBundleMgr/AssetBundleLoader.cs | 4 ++-- .../ResLoader/RuntimeResLoader.cs | 2 +- .../Manager/ResourcesUpdateManager.cs | 4 ++-- .../AssetBundle/Core/AssetBundleBuilder.cs | 22 ++++++++++++++++++- Assets/Scripts/GameInit/GameStart.cs | 2 +- Assets/Scripts/GameInit/UpdateManager.cs | 2 +- 8 files changed, 30 insertions(+), 10 deletions(-) diff --git a/Assets/AssetBundles-Browser-master/Editor/InspectTab/AssetBundleInspectTab.cs b/Assets/AssetBundles-Browser-master/Editor/InspectTab/AssetBundleInspectTab.cs index 9878b7db34..7b440223db 100644 --- a/Assets/AssetBundles-Browser-master/Editor/InspectTab/AssetBundleInspectTab.cs +++ b/Assets/AssetBundles-Browser-master/Editor/InspectTab/AssetBundleInspectTab.cs @@ -476,7 +476,7 @@ namespace AssetBundleBrowser if (null == bundle) { // Load the bundle - bundle = AssetBundle.LoadFromFile(path); + bundle = AssetBundle.LoadFromFile(path, 0, 128); if (null == bundle) { return null; diff --git a/Assets/LuaFramework/Scripts/Common/LuaLoader.cs b/Assets/LuaFramework/Scripts/Common/LuaLoader.cs index f71748d05d..acb6889f19 100644 --- a/Assets/LuaFramework/Scripts/Common/LuaLoader.cs +++ b/Assets/LuaFramework/Scripts/Common/LuaLoader.cs @@ -45,7 +45,7 @@ namespace GameLogic { string url = Util.DataPath + bundleName.ToLower(); if (File.Exists(url)) { - AssetBundle bundle = AssetBundle.LoadFromFile(url); + AssetBundle bundle = AssetBundle.LoadFromFile(url, 0, 128); if (bundle != null) { bundleName = bundleName.Replace("lua/", "").Replace(".unity3d", ""); diff --git a/Assets/Scripts/Core/ResMgr/AssetBundleMgr/AssetBundleLoader.cs b/Assets/Scripts/Core/ResMgr/AssetBundleMgr/AssetBundleLoader.cs index 5c6d834fc9..18bab58769 100644 --- a/Assets/Scripts/Core/ResMgr/AssetBundleMgr/AssetBundleLoader.cs +++ b/Assets/Scripts/Core/ResMgr/AssetBundleMgr/AssetBundleLoader.cs @@ -369,7 +369,7 @@ namespace ResMgr XNCSUtils.BeginSample("LoadAssetBundle:{0}",path); #endif //assetBundle = AssetBundle.LoadFromMemory(XXTEA.Decrypt(File.ReadAllBytes(fullPath))); - assetBundle = AssetBundle.LoadFromFile(fullPath); + assetBundle = AssetBundle.LoadFromFile(fullPath, 0, 128); #if XNCS XNCSUtils.EndSample(); #endif @@ -397,7 +397,7 @@ namespace ResMgr { if (BaseLogger.isDebug) BaseLogger.LogFormat("LoadAssetBundleAsyn:{0}", path); abLoaderState = ABLoaderState.Loading; - AssetBundleCreateRequest request = AssetBundle.LoadFromFileAsync(fullPath); + AssetBundleCreateRequest request = AssetBundle.LoadFromFileAsync(fullPath, 0, 128); //AssetBundleCreateRequest request = AssetBundle.LoadFromMemoryAsync(XXTEA.Decrypt(File.ReadAllBytes(fullPath))); while (!request.isDone) { diff --git a/Assets/Scripts/Core/ResMgr/ResourcesMgr/ResLoader/RuntimeResLoader.cs b/Assets/Scripts/Core/ResMgr/ResourcesMgr/ResLoader/RuntimeResLoader.cs index 25a88e7521..766fbd5538 100644 --- a/Assets/Scripts/Core/ResMgr/ResourcesMgr/ResLoader/RuntimeResLoader.cs +++ b/Assets/Scripts/Core/ResMgr/ResourcesMgr/ResLoader/RuntimeResLoader.cs @@ -164,7 +164,7 @@ namespace ResMgr { string path = string.Format("LZMA/ResConfigs").ToLower() + ResConfig.ABExtName; string fullPath = PathHelper.GetFullPath (path); - AssetBundle ab = AssetBundle.LoadFromFile(fullPath); + AssetBundle ab = AssetBundle.LoadFromFile(fullPath, 0, 128); //AssetBundle ab = AssetBundle.LoadFromMemory(XXTEA.Decrypt(File.ReadAllBytes(fullPath))); ResPathConfig = ab.LoadAsset("ResourcePathConfig"); ab.Unload(true); diff --git a/Assets/Scripts/Core/ResUpdate/Manager/ResourcesUpdateManager.cs b/Assets/Scripts/Core/ResUpdate/Manager/ResourcesUpdateManager.cs index cb4f88ea4f..4eccc7b40f 100644 --- a/Assets/Scripts/Core/ResUpdate/Manager/ResourcesUpdateManager.cs +++ b/Assets/Scripts/Core/ResUpdate/Manager/ResourcesUpdateManager.cs @@ -490,7 +490,7 @@ namespace ResUpdate /// List GetNewResourceFiles() { - AssetBundle bundle = AssetBundle.LoadFromFile(UpdateConfigs.PersistentDataPath + UpdateConfigs.FILES); + AssetBundle bundle = AssetBundle.LoadFromFile(UpdateConfigs.PersistentDataPath + UpdateConfigs.FILES, 0, 128); ResourceFiles files = bundle.LoadAsset("game"); List list = files.files; bundle.Unload(true); @@ -503,7 +503,7 @@ namespace ResUpdate /// List GetStreamResourceFiles() { - AssetBundle bundle = AssetBundle.LoadFromFile(UpdateConfigs.StreamPath + UpdateConfigs.FILES); + AssetBundle bundle = AssetBundle.LoadFromFile(UpdateConfigs.StreamPath + UpdateConfigs.FILES, 0, 128); if (bundle != null) { ResourceFiles files = bundle.LoadAsset("game"); diff --git a/Assets/Scripts/Editor/GameEditor/AssetBundle/Core/AssetBundleBuilder.cs b/Assets/Scripts/Editor/GameEditor/AssetBundle/Core/AssetBundleBuilder.cs index 3e0442d7b0..2b19699673 100644 --- a/Assets/Scripts/Editor/GameEditor/AssetBundle/Core/AssetBundleBuilder.cs +++ b/Assets/Scripts/Editor/GameEditor/AssetBundle/Core/AssetBundleBuilder.cs @@ -314,7 +314,27 @@ namespace GameEditor.AssetBundle DateTime oldTime = DateTime.Now; AssetBundleBuild[] builds = new AssetBundleBuild[buildMap.Count]; buildMap.Values.CopyTo(builds, 0); - BuildPipeline.BuildAssetBundles(exportPath, builds, options, buildTarget); + var manifest = BuildPipeline.BuildAssetBundles(exportPath, builds, options, buildTarget); + + + // 加密 文件前加入128个空字符 + foreach(var name in manifest.GetAllAssetBundles()) + { + var uniqueSalt = Encoding.UTF8.GetBytes(name); + string pn = Path.Combine(exportPath, name); + byte[] oldData = File.ReadAllBytes(pn); + int newOldLen = 128 + oldData.Length;//定死了,128个空byte + var newData = new byte[newOldLen]; + for (int tb = 0; tb < oldData.Length; tb++) + { + newData[128 + tb] = oldData[tb]; + } + FileStream fs = File.OpenWrite(pn);//打开写入进去 + fs.Write(newData, 0, newOldLen); + fs.Close(); + } + + TimeSpan span = DateTime.Now.Subtract(oldTime); Debug.Log("打包完毕,本次打包耗时:" + span.TotalSeconds + "秒!"); } diff --git a/Assets/Scripts/GameInit/GameStart.cs b/Assets/Scripts/GameInit/GameStart.cs index ec04d899aa..d48cf3c0de 100644 --- a/Assets/Scripts/GameInit/GameStart.cs +++ b/Assets/Scripts/GameInit/GameStart.cs @@ -55,7 +55,7 @@ public class GameStart : MonoBehaviour { path = AppConst.StreamPath + "lz4/splashpanel.unity3d"; } - bundle = AssetBundle.LoadFromFile(path); + bundle = AssetBundle.LoadFromFile(path, 0, 128); GameObject gameObj = bundle.LoadAsset("SplashPanel"); GameObject gameObj2 = Instantiate(gameObj, Vector3.zero, Quaternion.identity); Image image = gameObj2.transform.Find("Canvas/image").GetComponent(); diff --git a/Assets/Scripts/GameInit/UpdateManager.cs b/Assets/Scripts/GameInit/UpdateManager.cs index 914b91afb6..4a341d4115 100644 --- a/Assets/Scripts/GameInit/UpdateManager.cs +++ b/Assets/Scripts/GameInit/UpdateManager.cs @@ -119,7 +119,7 @@ namespace GameLogic { { path = AppConst.StreamPath + "lz4/updatepanel.unity3d"; } - bundle = AssetBundle.LoadFromFile(path); + bundle = AssetBundle.LoadFromFile(path, 0, 128); if (bundle == null) { XDebug.Log.error(string.Format("{0} 不存在,请检查", path ));