다음을 통해 공유


Windows.Networking.BackgroundTransfer 네임스페이스

앱 내에서 고급 다운로드 및 업로드 전송 기능을 사용하도록 설정합니다. 백그라운드 전송 기능에 대한 개요는 백그라운드에서 데이터 전송을 참조하세요. 코드 예제에 대한 백그라운드 전송 샘플을 다운로드합니다.

참고

백그라운드 전송은 주로 비디오, 음악 및 대형 이미지와 같은 리소스에 대한 장기 전송 작업을 위해 설계되었습니다. 더 작은 리소스(예: 몇 KB)의 전송과 관련된 단기 작업의 경우 HTTP API를 사용하는 것이 좋습니다. HttpClient 가 선호되며 UWP 앱에서 지원하는 모든 언어로 사용할 수 있습니다. XHR 은 JavaScript에서 사용할 수 있습니다. IXHR2 는 C++에서 사용할 수 있습니다.

클래스

BackgroundDownloader

CreateDownload를 사용하여 다운로드 작업을 실제로 만들기 전에 다운로드를 구성하는 데 사용됩니다. 백그라운드 전송 기능에 대한 개요는 백그라운드에서 데이터 전송을 참조하세요. 코드 예제에 대한 백그라운드 전송 샘플을 다운로드합니다.

참고

백그라운드 전송은 주로 비디오, 음악 및 대형 이미지와 같은 리소스에 대한 장기 전송 작업을 위해 설계되었습니다. 더 작은 리소스(예: 몇 KB)의 전송과 관련된 단기 작업의 경우 Windows.Web.Http 네임스페이스를 사용합니다.

BackgroundTransferCompletionGroup

모든 작업이 완료되면 백그라운드 작업을 트리거하거나(작업이 성공적으로 완료된 경우) 오류와 함께 실패하는 백그라운드 전송 작업 집합(DownloadOperation 또는 UploadOperation 개체)을 나타냅니다.

BackgroundTransferCompletionGroupTriggerDetails

IBackgroundTaskRun 메서드에서만 액세스할 수 있는 BackgroundTransferCompletionGroup에 대한 정보를 포함합니다.

BackgroundTransferContentPart

다중 파트 전송 요청의 콘텐츠 부분을 나타냅니다. 각 BackgroundTransferContentPart 개체는 텍스트 콘텐츠의 단일 문자열 또는 단일 파일 페이로드를 나타낼 수 있지만 둘 다 나타낼 수는 없습니다.

BackgroundTransferError

전송 작업 중에 발생한 오류를 제공하는 데 사용됩니다.

BackgroundTransferGroup

여러 다운로드 또는 업로드 작업을 연결하는 데 사용되는 명명된 그룹입니다. 이 클래스를 사용하면 앱에서 이러한 그룹을 쉽게 만들고 다운로드 및 업로드를 직렬로 또는 우선 순위에 따라 동시에 완료할 수 있습니다.

예를 들어 사용자가 인기 TV 시리즈에서 에피소드를 다운로드하고 watch 경우 앱은 시리즈의 초기 에피소드에 우선 순위를 지정하거나 사용자가 먼저 다운로드할 에피소드를 선택하도록 할 수 있습니다.

BackgroundTransferRangesDownloadedEventArgs

증분 다운로드 진행률 이벤트에 대한 정보에 대한 액세스를 제공합니다.

BackgroundUploader

CreateUpload를 사용하여 업로드 작업을 실제로 만들기 전에 업로드를 구성하는 데 사용됩니다. 백그라운드 전송 기능에 대한 개요는 백그라운드에서 데이터 전송을 참조하세요. 코드 예제에 대한 백그라운드 전송 샘플을 다운로드합니다.

참고

백그라운드 전송은 주로 비디오, 음악 및 대형 이미지와 같은 리소스에 대한 장기 전송 작업을 위해 설계되었습니다. 더 작은 리소스(예: 몇 KB)의 전송과 관련된 단기 작업의 경우 Windows.Web.Http 네임스페이스를 사용합니다.

ContentPrefetcher

프리페치할 웹 리소스를 지정하기 위한 속성을 제공합니다. Windows는 추론을 사용하여 사용자가 앱을 실행하기 전에 지정된 리소스를 다운로드하려고 시도합니다.

DownloadOperation

비동기 다운로드 작업을 수행합니다. 백그라운드 전송 샘플에서는 이 기능을 보여 줍니다. 백그라운드 전송 기능에 대한 개요는 백그라운드에서 데이터 전송을 참조하세요.

ResponseInformation

서버 응답에서 반환되는 데이터를 나타냅니다.

UnconstrainedTransferRequestResult

BackgroundDownloader 또는 BackgroundUploader 개체에서 제한되지 않은 전송에 대한 요청 결과를 나타냅니다.

디바이스가 배터리로 실행되는 동안 일반적으로 백그라운드 네트워크 작업과 연결된 리소스 제한 없이 제한되지 않은 전송 작업을 실행할 수 있습니다.

UploadOperation

비동기 업로드 작업을 수행합니다. 백그라운드 전송 기능에 대한 개요는 백그라운드에서 데이터 전송을 참조하세요. 코드 예제에 대한 백그라운드 전송 샘플을 다운로드합니다.

구조체

BackgroundDownloadProgress

다운로드 작업에 대한 상태 정보를 포함합니다.

BackgroundTransferFileRange

파일 전송 작업에 대한 상태 정보를 포함합니다.

BackgroundUploadProgress

업로드 작업에 대한 상태 정보를 포함합니다.

인터페이스

IBackgroundTransferBase

백그라운드 전송 작업을 나타냅니다.

IBackgroundTransferContentPartFactory

BackgroundTransferContentPart 개체를 만듭니다.

IBackgroundTransferOperation

백그라운드 전송 작업을 나타냅니다.

IBackgroundTransferOperationPriority

이 인터페이스를 사용하여 BackgroundTransferGroup 내에서 다운로드 또는 업로드의 우선 순위를 결정합니다. 가능한 값은 BackgroundTransferPriority 열거형으로 정의됩니다.

열거형

BackgroundTransferBehavior

BackgroundTransferGroup 내의 다운로드 및 업로드가 동시에 또는 직렬로 실행되는지 여부를 나타내는 데 사용되는 값을 정의합니다.

BackgroundTransferCostPolicy

데이터 통신 네트워크에서 전송이 발생할 수 있는지 여부를 지정하는 데 사용되는 값을 정의합니다.

BackgroundTransferPriority

앱 내 예약 측면에서 BackgroundTransfer 작업(다운로드 또는 업로드)의 우선 순위를 나타냅니다.

BackgroundTransferStatus

전송 작업 상태 값을 정의합니다.

설명

대부분의 플랫폼에서 백그라운드 전송은 앱이 일시 중단되거나 종료되는 경우에도 파일을 계속 전송합니다(다운로드 또는 업로드). 앱이 시작되면 BackgroundDownloader.GetCurrentDownloadsAsync 또는 BackgroundUploader.GetCurrentUploadsAsync 를 호출하여 불완전한 모든 전송을 열거해야 합니다. 그런 다음 각각 에 대해 DownloadOperation.AttachAsync 또는 UploadOperation.AttachAsync를 각각 호출합니다. 이렇게 하면 전송의 최신 상태가 검색되고 시스템이 다시 부팅된 후 전송이 다시 시작됩니다. DownloadOperation.IsRandomAccessRequired가 이면 true다시 부팅 후 다운로드가 자동으로 다시 시작됩니다. 이 경우에도 AttachAsync 를 호출해야 합니다. 전송이 완료된 경우(즉, AttachAsync 호출이 반환되는 경우) 앱이 실행되는 경우 응답으로 작업을 수행할 수 있습니다. 또는 BackgroundTransferCompletionGroup을 사용하여 전송이 완료되면 백그라운드 작업을 시작할 수 있습니다.

Xbox에서 백그라운드 전송은 앱이 포그라운드에 있는 동안에만 파일을 전송합니다(다운로드 또는 업로드). 앱이 일시 중단되거나, 백그라운드에 배치되거나, 종료되면 앱의 백그라운드 전송이 일시 중단됩니다. 앱이 포그라운드에서 다시 실행되면 해당 전송이 자동으로 다시 시작됩니다.

추가 정보