private IEnumerator LoadBytesCo(string fileUri, LoadBytesCallback loadBytesCallback) { byte[] bytes = null; string errorMessage = null; #if UNITY_5_4_OR_NEWER UnityWebRequest unityWebRequest = UnityWebRequest.Get(fileUri); #if UNITY_2017_2_OR_NEWER yield return(unityWebRequest.SendWebRequest()); #else yield return(unityWebRequest.Send()); #endif bool isError = false; #if UNITY_2017_1_OR_NEWER isError = unityWebRequest.isNetworkError; #else isError = unityWebRequest.isError; #endif bytes = unityWebRequest.downloadHandler.data; errorMessage = isError ? unityWebRequest.error : null; unityWebRequest.Dispose(); #else WWW www = new WWW(fileUri); yield return(www); bytes = www.bytes; errorMessage = www.error; www.Dispose(); #endif if (loadBytesCallback != null) { loadBytesCallback(fileUri, bytes, errorMessage); } }
private IEnumerator LoadBytesCo(string fileUri, LoadBytesCallback loadBytesCallback) { WWW www = new WWW(fileUri); yield return(www); byte[] bytes = www.bytes; string errorMessage = www.error; www.Dispose(); loadBytesCallback?.Invoke(fileUri, bytes, errorMessage); }
/// <summary> /// 直接从指定文件路径读取数据流。 /// </summary> /// <param name="fileUri">文件路径。</param> /// <param name="loadBytesCallback">读取数据流回调函数。</param> public override void LoadBytes(string fileUri, LoadBytesCallback loadBytesCallback) { StartCoroutine(LoadBytesCo(fileUri, loadBytesCallback)); }
/// <summary> /// 直接从指定文件路径读取数据流。 /// </summary> /// <param name="fileUri">文件路径。</param> /// <param name="loadBytesCallback">读取数据流回调函数。</param> public override void LoadBytes(string fileUri, LoadBytesCallback loadBytesCallback) { Debug.Log("load at LoadBytes " + fileUri); StartCoroutine(LoadBytesCo(fileUri, loadBytesCallback)); }
/// <summary> /// 直接从指定文件路径读取数据流。 /// </summary> /// <param name="fileUri">文件路径。</param> /// <param name="loadBytesCallback">读取数据流回调函数。</param> public abstract void LoadBytes(string fileUri, LoadBytesCallback loadBytesCallback);
/// <summary> /// 直接从指定文件路径读取数据流。 /// </summary> /// <param name="fileUri">文件路径。</param> /// <param name="loadBytesCallback">读取数据流回调函数。</param> public void LoadBytes(string fileUri, LoadBytesCallback loadBytesCallback) { m_ResourceHelper.LoadBytes(fileUri, loadBytesCallback); }