using System.Collections; using System.Collections.Generic; using System.IO; using UnityEngine; using UnityEngine.Networking; public class AudioLoader { public static IEnumerator LoadAudio(string auFullName, AudioLoadedEventHandler handler, AudioSource asHandler, AudioType auType = AudioType.MPEG) { // Debug.Log(auFullName); using (UnityWebRequest www = UnityWebRequestMultimedia.GetAudioClip(auFullName, auType)) { yield return www.SendWebRequest(); if (www.result == UnityWebRequest.Result.Success) { AudioClip auClip = DownloadHandlerAudioClip.GetContent(www); auClip.name = Path.GetFileNameWithoutExtension(auFullName); if (handler != null) { handler(auClip, asHandler); } } else { Debug.Log(string.Format("Error loading remote audio【{0}】:{1} ", auFullName, www.error)); } } } } /// /// 音频加载结束事件委托 /// /// 音频对象 public delegate void AudioLoadedEventHandler(AudioClip auClip, AudioSource asHandler);