// 保证所有指定级别的包文件均为本地最新状态 public IList <DownloadWorker.JobInfo> EnsureBundles(Manifest.BundleLoad load, Action onComplete) { var jobs = new List <DownloadWorker.JobInfo>(); var countdown = new Utils.CountdownObject(onComplete); for (int i = 0, size = _manifestObject.bundles.Count; i < size; i++) { var bundleInfo = _manifestObject.bundles[i]; if ((bundleInfo.load & load) != 0) { if (!IsBundleAvailable(bundleInfo)) { countdown.Add(); var job = _DownloadBundleFile(bundleInfo, () => countdown.Remove(), true); if (job != null) { jobs.Add(job); } } } } countdown.Start(); return(jobs); }
public IList <DownloadWorker.JobInfo> EnsureBundles(Manifest.BundleLoad load, Action onComplete) { try { onComplete?.Invoke(); } catch (Exception exception) { Debug.LogErrorFormat("EnsureBundles exception\n{0}", exception); } return(new List <DownloadWorker.JobInfo>()); }
public IList <Manifest.BundleInfo> GetInvalidatedBundles(Manifest.BundleLoad load) { var size = _manifestObject.bundles.Count; var list = new List <Manifest.BundleInfo>(size); for (var i = 0; i < size; i++) { var bundleInfo = _manifestObject.bundles[i]; if ((bundleInfo.load & load) != 0) { if (!IsBundleAvailable(bundleInfo)) { list.Add(bundleInfo); } } } return(list); }
public IList <Manifest.BundleInfo> GetInvalidatedBundles(Manifest.BundleLoad load) { return(new List <Manifest.BundleInfo>()); }
public IList <DownloadWorker.JobInfo> EnsureBundles(Manifest.BundleLoad load, Action onComplete) { onComplete?.Invoke(); return(new List <DownloadWorker.JobInfo>()); }
// 检查本地资源包状态, 返回所有需要下载的包信息的列表 public static IList <Manifest.BundleInfo> GetInvalidatedBundles(Manifest.BundleLoad load) { return(GetAssetProvider().GetInvalidatedBundles(load)); }
public static IList <DownloadWorker.JobInfo> EnsureBundles(Manifest.BundleLoad load, Action onComplete) { var bundleInfos = GetInvalidatedBundles(load); return(GetAssetProvider().EnsureBundles(bundleInfos, onComplete)); }
public static IList <DownloadWorker.JobInfo> EnsureBundles(Manifest.BundleLoad load, Action onComplete) { return(GetAssetProvider().EnsureBundles(load, onComplete)); }