Windows.Networking.BackgroundTransfer 命名空間

在應用程式中啟用進階下載和上傳傳輸功能。 如需背景傳輸功能的概觀,請參閱 在背景傳輸資料。 下載 程式碼範例的背景傳輸範例

注意

背景傳輸主要是針對影片、音樂和大型影像等資源的長期傳輸作業所設計。 對於涉及傳輸較小資源 (的短期作業,例如幾個 KB) ,建議使用 HTTP API。 HttpClient 是慣用的,可用於 UWP 應用程式支援的所有語言。 XHR 可用於 JavaScript。 IXHR2 可用於 C++。

類別

BackgroundDownloader

用來在使用 CreateDownload實際建立下載作業之前設定下載。 如需背景傳輸功能的概觀,請參閱 在背景傳輸資料。 下載 程式碼範例的背景傳輸範例

注意

背景傳輸主要是針對影片、音樂和大型影像等資源的長期傳輸作業所設計。 對於涉及傳輸較小資源 (的短期作業,也就是幾個 KB) ,請使用 Windows.Web.Http 命名空間。

BackgroundTransferCompletionGroup

代表一組背景傳輸作業, (DownloadOperationUploadOperation 物件) 一旦完成所有作業, (作業) 順利完成或發生錯誤時觸發背景工作。

BackgroundTransferCompletionGroupTriggerDetails

包含BackgroundTransferCompletionGroup的相關資訊,該群組只能從IBackgroundTask上的Run方法存取。

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 上,背景傳輸只會在應用程式位於前景時, (下載或上傳) 您的檔案。 當應用程式暫停、放入背景或已結束時,應用程式的背景傳輸會暫停。 當應用程式再次在前景執行時,會自動繼續其傳輸。

另請參閱