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

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

例如,如果用户决定从热门电视连续剧下载和watch剧集,你的应用可以确定该系列中最早的剧集的优先级,或者让用户选择要先下载的剧集。

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 上,后台传输仅在应用位于前台时 (下载或上传) 传输文件。 当应用暂停、放入后台或退出时,应用的后台传输将暂停。 当应用再次在前台运行时,其传输会自动恢复。

另请参阅