public void Init(string fileName, string url, string savePath, int flushSize, int timeOut, int reStartCount, int reStartInterval, LoadSuccessCallback loadSuccessCallback = null, LoadFailureCallback loadFailureCallback = null, LoadUpdateCallback loadUpdateCallback = null, ThreadPriority threadPriority = ThreadPriority.Normal) { m_FileName = fileName; m_Url = url; m_SavePath = savePath; m_FlushSize = flushSize; m_TimeOut = timeOut; m_ReStartCount = reStartCount; m_ReStartInterval = reStartInterval; m_ThreadPriority = threadPriority; m_LoadSuccessCallback = loadSuccessCallback; m_LoadFailureCallback = loadFailureCallback; m_LoadUpdateCallback = loadUpdateCallback; }
/// <summary> /// 构造函数 /// </summary> /// <param name="fileName">文件名</param> /// <param name="url">下载地址</param> /// <param name="savePath">保存地址</param> /// <param name="flushSize">缓冲区大小</param> /// <param name="timeOut">超时时间</param> /// <param name="reStartCount">断线重连次数</param> /// <param name="reStartInterval">断线重连间隔时间</param> /// <param name="loadSuccessCallback">下载成功回调</param> /// <param name="loadFailureCallback">下载失败回调</param> /// <param name="loadUpdateCallback">下载中回调</param> /// <param name="threadPriority">线程优先级</param> public DownloadTask(string fileName, string url, string savePath, int flushSize = 1024 * 1024, int timeOut = 5 * 1000, int reStartCount = 5, int reStartInterval = 1000, LoadSuccessCallback loadSuccessCallback = null, LoadFailureCallback loadFailureCallback = null, LoadUpdateCallback loadUpdateCallback = null, ThreadPriority threadPriority = ThreadPriority.Normal) { FileName = fileName; Url = url; m_SavePath = savePath; m_FlushSize = flushSize; m_TimeOut = timeOut; m_ReStartCount = reStartCount; m_ReStartInterval = reStartInterval; m_LoadSuccessCallback = loadSuccessCallback; m_LoadFailureCallback = loadFailureCallback; m_LoadUpdateCallback = loadUpdateCallback; m_ThreadPriority = threadPriority; }
public void Init(long totalSize, string fileName, string url, string savePath, object userData = null, LoadSuccessCallback loadSuccessCallback = null, LoadFailureCallback loadFailureCallback = null, LoadUpdateCallback loadUpdateCallback = null) { txt_Name.text = fileName; m_TotalSize = totalSize; txt_Size.text = "0/" + totalSize; Slider.value = 0; loadUpdateCallback += ShowSlider; loadSuccessCallback += OK; loadFailureCallback += GG; DownloadManager.Instance.AddDownLoadTask(fileName, url, savePath, loadSuccessCallback, loadFailureCallback, loadUpdateCallback); }
/// <summary> /// 添加一个下载任务 /// </summary> /// <param name="fileName">文件名</param> /// <param name="url">下载地址</param> /// <param name="savePath">保存地址</param> /// <param name="loadSuccessCallback">下载成功回调</param> /// <param name="loadFailureCallback">下载失败回调</param> /// <param name="loadUpdateCallback">下载中回调</param> /// <param name="flushSize">缓冲区大小</param> /// <param name="timeOut">超时时间</param> /// <param name="reStartCount">断线重连次数</param> /// <param name="reStartInterval">断线重连间隔时间</param> /// <param name="threadPriority">线程优先级</param> public void AddDownLoadTask(string fileName, string url, string savePath, LoadSuccessCallback loadSuccessCallback = null, LoadFailureCallback loadFailureCallback = null, LoadUpdateCallback loadUpdateCallback = null, int flushSize = 1024 *1024, int timeOut = 5000, int reStartCount = 5, int reStartInterval = 1000, ThreadPriority threadPriority = ThreadPriority.Normal) { if (string.IsNullOrEmpty(fileName)) { throw new Exception("Download fileName is invalid."); } if (string.IsNullOrEmpty(url)) { throw new Exception("Download url is invalid."); } if (string.IsNullOrEmpty(savePath)) { throw new Exception("Download savePath is invalid."); } DownloadTask downloadTask = new DownloadTask(fileName, url, savePath, flushSize, timeOut, reStartCount, reStartInterval, loadSuccessCallback, loadFailureCallback, loadUpdateCallback, threadPriority); m_WaitQue.Enqueue(downloadTask); }
private static extern IntPtr LoadListenerCreate(LoadSuccessCallback loadSuccessCallback, LoadFailureCallback loadFailureCallback);