namespace YooAsset { internal class DownloadFileOptions { /// /// 失败后重试次数 /// public readonly int FailedTryAgain; /// /// 主资源地址 /// public string MainURL { private set; get; } /// /// 备用资源地址 /// public string FallbackURL { private set; get; } /// /// 拷贝的本地文件路径 /// public string ImportFilePath { set; get; } public DownloadFileOptions(int failedTryAgain) { FailedTryAgain = failedTryAgain; } /// /// 设置下载地址 /// public void SetURL(string mainURL, string fallbackURL) { MainURL = mainURL; FallbackURL = fallbackURL; } /// /// 是否有效 /// public bool IsValid() { if (string.IsNullOrEmpty(MainURL) || string.IsNullOrEmpty(FallbackURL)) return false; return true; } } internal abstract class FSDownloadFileOperation : AsyncOperationBase { public PackageBundle Bundle { private set; get; } /// /// 当前下载的字节数 /// public long DownloadedBytes { protected set; get; } /// /// 当前下载进度(0f - 1f) /// public float DownloadProgress { protected set; get; } public FSDownloadFileOperation(PackageBundle bundle) { Bundle = bundle; DownloadedBytes = 0; DownloadProgress = 0; } } }