Windows.Networking.BackgroundTransfer 命名空间

在应用中启用高级下载和上传传输功能。 有关后台传输功能的概述,请参阅 后台传输数据。 下载代码示例的 后台传输示例

注意

后台传输主要针对视频、音乐和大型图像等资源进行长期传输操作。 对于涉及 (较小资源的短期操作(即几个 KB) ),建议使用 HTTP API。 首选 HttpClient ,可用于 UWP 应用支持的所有语言。 XHR 可用于 JavaScript。 IXHR2 可在 C++ 中使用。

BackgroundDownloader

用于在使用 CreateDownload 实际创建下载操作之前配置下载。 有关后台传输功能的概述,请参阅 后台传输数据。 下载代码示例的 后台传输示例

注意

后台传输主要用于视频、音乐和大型图像等资源的长期传输操作。 对于涉及 (较小资源的传输的短期操作(例如,几个 KB) ),请使用 Windows.Web.Http 命名空间。

BackgroundTransferCompletionGroup

表示一组后台传输操作, (DownloadOperationUploadOperation 对象) ,在完成所有操作后触发后台任务(如果 (操作成功完成) 或失败并出现错误)。

BackgroundTransferCompletionGroupTriggerDetails

包含有关仅可从 IBackgroundTask 上的 Run 方法访问的 BackgroundTransferCompletionGroup 的信息。

BackgroundTransferContentPart

表示多部分传输请求的内容部分。 每个 BackgroundTransferContentPart 对象都可以表示单个文本内容字符串或单个文件有效负载,但不能同时表示这两者。

BackgroundTransferError

用于提供传输操作期间遇到的错误。

BackgroundTransferGroup

用于关联多个下载或上传操作的命名组。 此类使应用可以轻松创建这些组,并同时完成下载和上传、串行或基于优先级。

例如,如果用户决定从热门电视连续剧下载和观看剧集,你的应用可以优先考虑该系列最早的情节,或者让用户选择先下载哪个情节。

BackgroundTransferRangesDownloadedEventArgs

提供对有关增量下载进度事件的信息的访问权限。

BackgroundUploader

用于在使用 CreateUpload 实际创建上传操作之前配置上传。 有关后台传输功能的概述,请参阅 后台传输数据。 下载代码示例的 后台传输示例

注意

后台传输主要用于视频、音乐和大型图像等资源的长期传输操作。 对于涉及 (较小资源的传输的短期操作(例如,几个 KB) ),请使用 Windows.Web.Http 命名空间。

ContentPrefetcher

提供用于指定要预提取的 Web 资源的属性。 Windows 将使用启发式尝试在用户启动应用之前下载指定的资源。

DownloadOperation

执行异步下载操作。 后台传输示例演示了此功能。 有关后台传输功能的概述,请参阅 后台传输数据

ResponseInformation

表示服务器响应返回的数据。

UnconstrainedTransferRequestResult

表示从 BackgroundDownloaderBackgroundUploader 对象对不受约束的传输的请求的结果。

在电池上运行的设备时,不受约束的传输操作可以运行,而通常与后台网络操作关联的资源限制。

UploadOperation

执行异步上传操作。 有关后台传输功能的概述,请参阅 后台传输数据。 下载代码示例的 后台传输示例

结构

BackgroundDownloadProgress

包含有关下载操作的状态信息。

BackgroundTransferFileRange

包含有关文件传输操作的状态信息。

BackgroundUploadProgress

包含有关上传操作的状态信息。

接口

IBackgroundTransferBase

表示后台传输操作。

IBackgroundTransferContentPartFactory

创建 BackgroundTransferContentPart 对象。

IBackgroundTransferOperation

表示后台传输操作。

IBackgroundTransferOperationPriority

使用此接口确定 BackgroundTransferGroup 中下载或上传的优先级。 可能的值由 BackgroundTransferPriority 枚举定义。

枚举

BackgroundTransferBehavior

定义用于指示 BackgroundTransferGroup 中是否同时或串行运行的下载和上传的值。

BackgroundTransferCostPolicy

定义用于指定是否可以在按流量计费的网络上发生的传输的值。

BackgroundTransferPriority

指示 BackgroundTransfer 操作 (下载或上传) 在应用中进行计划时所具有的优先级。

BackgroundTransferStatus

定义传输操作状态值。

注解

在大多数平台上,后台传输将继续传输文件, (下载或上传) ,即使应用暂停或退出。 应用启动时,应调用 BackgroundDownloader.GetCurrentDownloadsAsyncBackgroundUploader.GetCurrentUploadsAsync 来枚举所有不完整的传输。 然后分别对每一个调用 DownloadOperation.AttachAsyncUploadOperation.AttachAsync。 这样做会检索传输的最新状态,并导致系统重新启动后恢复传输。 当 DownloadOperation.IsRandomAccessRequiredtrue时,下载会在重新启动后自动恢复。 即使在这种情况下,你也应该调用 AttachAsync 。 如果应用在传输完成 ((即对 AttachAsync 的调用返回) )时运行,则可以在响应中执行操作。 或者,可以使用 BackgroundTransferCompletionGroup 在传输完成后启动后台任务。

在 Xbox 上,后台传输仅在应用处于前台时传输 (下载或上传) 的文件。 当应用挂起、放入后台或退出时,应用的背景传输将暂停。 当应用再次在前台运行时,会自动恢复其传输。

另请参阅