public override bool LoadSync() { if (!CheckLoadAble()) { return(false); } State = ResState.Loading; //TimeDebugger timer = ResMgr.Instance.timeDebugger; string url = QFrameworkConfigData.AssetBundleName2Url(mAssetName); //timer.Begin("LoadSync AssetBundle:" + mName); AssetBundle bundle = AssetBundle.LoadFromFile(url); //timer.End(); mUnloadFlag = true; if (bundle == null) { Log.E("Failed Load AssetBundle:" + mAssetName); OnResLoadFaild(); return(false); } assetBundle = bundle; State = ResState.Ready; //Log.I(string.Format("Load AssetBundle Success.ID:{0}, Name:{1}", bundle.GetInstanceID(), bundle.name)); //timer.Dump(-1); return(true); }
public override IEnumerator StartIEnumeratorTask(Action finishCallback) { //开启的时候已经结束了 if (RefCount <= 0) { OnResLoadFaild(); finishCallback(); yield break; } string url = QFrameworkConfigData.AssetBundleName2Url(mAssetName); AssetBundleCreateRequest abcR = AssetBundle.LoadFromFileAsync(url); mAssetBundleCreateRequest = abcR; yield return(abcR); mAssetBundleCreateRequest = null; if (!abcR.isDone) { Log.E("AssetBundleCreateRequest Not Done! Path:" + mAssetName); OnResLoadFaild(); finishCallback(); yield break; } assetBundle = abcR.assetBundle; State = ResState.Ready; finishCallback(); }