#region Copyright RenGuiYou. All rights reserved. //===================================================== // NeatlyFrameWork // Author: RenGuiyou // Feedback: mailto:750539605@qq.com //===================================================== #endregion using System.Collections.Generic; using Neatly.Module; using UnityEngine; namespace Neatly.Load.Manager { public class AssetBundleMapManager : Singleton { private Dictionary m_ABMap = new Dictionary(); private LoadModule m_LoadModule; public void Init(LoadModule loadModule) { m_LoadModule = loadModule; HotReload(); } public void HotReload() { if (m_LoadModule.GetUseBundle()) { m_ABMap.Clear(); var loader = m_LoadModule.LoadAssetBundleDirect(NeatlyConfig.NAME_ASSETBUNDLE_MAP); var bundle = loader.ResultObject as AssetBundle; var bundleMap = bundle.LoadAsset(NeatlyConfig.NAME_ASSETBUNDLE_MAP); for (int i = 0; i < bundleMap.path.Length; i++) { m_ABMap.Add(bundleMap.path[i], bundleMap.bundleName[i]); } bundle.Unload(false); } } public string Get(string key) { key = key.ToLower(); string result = null; m_ABMap.TryGetValue(key, out result); if (result != null) { return result; } return key; } } }