/// <summary>
        /// 加载AB包
        /// </summary>
        /// <param name="abName"></param>
        /// <returns></returns>
        public IEnumerator LoadAssetBundle(string abName)
        {
            //AB包关系的建立
            if (!_DicABRelation.ContainsKey(abName))
            {
                ABRelation abRelationObj = new ABRelation(abName);
                _DicABRelation.Add(abName, abRelationObj);
            }
            ABRelation tmpABReltation = _DicABRelation[abName];

            //得到指定AB包所有依赖关系(查询清单文件)
            string[] strDependenceArray = ABMainfestLoader.GetInstance().RetrivalDependce(abName);
            foreach (string item_Depence in strDependenceArray)
            {
                //添加 依赖项
                tmpABReltation.AddDependence(item_Depence);
                //添加引用项  递归调用
                yield return(LoadReference(item_Depence, abName));
            }

            //真正加载AB包
            if (_DicSingleABLoaderCache.ContainsKey(abName))
            {
                yield return(_DicSingleABLoaderCache[abName].LoadAssetBundle());
            }
            else
            {
                _CurrentSingleABLoader = new SingleABLoader(abName, CompleteLoadAB);
                _DicSingleABLoaderCache.Add(abName, _CurrentSingleABLoader);
                yield return(_CurrentSingleABLoader.LoadAssetBundle());
            }
        }
        private void LoadComplete1(string abName)
        {
            SingleABLoader sing1 = new SingleABLoader(_ABName3, LoadComplete2);

            StartCoroutine(sing1.LoadAssetBundle());
        }
 private void LoadComplete2(string abName)
 {
     _LoadObj = new SingleABLoader(_ABName, LoadComplete3);
     StartCoroutine(_LoadObj.LoadAssetBundle());
 }
        private string _ABAssetName3 = "Plane.prefab";//Cube.prefab
        #region Test1
        //private void Start()
        //{
        //    _LoadObj = new SingleABLoader(_ABName, LoadComplete);

        //    StartCoroutine(_LoadObj.LoadAssetBundle());
        //}

        //private void LoadComplete(string abName)
        //{
        //    UnityEngine.Object tmpObj = _LoadObj.LoadAsset(_ABAssetName1, false);
        //    Instantiate(tmpObj);

        //    UnityEngine.Object tmpObj2 = _LoadObj.LoadAsset(_ABAssetName2, false);
        //    Instantiate(tmpObj2);
        //}
        #endregion

        #region Test2
        private void Start()
        {
            SingleABLoader _loadDependObj = new SingleABLoader(_ABName2, LoadComplete1);

            StartCoroutine(_loadDependObj.LoadAssetBundle());
        }