Windows.Networking.BackgroundTransfer Namespace

Habilita os recursos avançados de download e transferência de upload em um aplicativo. Para obter uma visão geral dos recursos de Transferência em Segundo Plano, confira Como transferir dados em segundo plano. Baixe o exemplo de transferência em segundo plano para um exemplo de código.

Observação

A transferência em segundo plano foi projetada principalmente para operações de transferência de longo prazo para recursos como vídeo, música e imagens grandes. Para operações de curto prazo que envolvem transferências de recursos menores (ou seja, alguns KB), as APIs HTTP são recomendadas. O HttpClient é preferencial e pode ser usado em todos os idiomas compatíveis com aplicativos UWP. O XHR pode ser usado em JavaScript. O IXHR2 pode ser usado em C++.

Classes

BackgroundDownloader

Usado para configurar downloads antes da criação real da operação de download usando CreateDownload. Para obter uma visão geral dos recursos de Transferência em Segundo Plano, confira Como transferir dados em segundo plano. Baixe o exemplo de transferência em segundo plano para um exemplo de código.

Observação

A Transferência em Segundo Plano foi projetada principalmente para operações de transferência de longo prazo para recursos como vídeo, música e imagens grandes. Para operações de curto prazo que envolvem transferências de recursos menores (ou seja, alguns KB), use o namespace Windows.Web.Http .

BackgroundTransferCompletionGroup

Representa um conjunto de operações de transferência em segundo plano (objetos DownloadOperation ou UploadOperation ) que disparam uma tarefa em segundo plano depois que todas as operações são feitas (se as operações foram concluídas com êxito) ou falham com um erro.

BackgroundTransferCompletionGroupTriggerDetails

Contém informações sobre um BackgroundTransferCompletionGroup que só pode ser acessado do método Run no IBackgroundTask.

BackgroundTransferContentPart

Representa uma parte de conteúdo de uma solicitação de transferência de várias partes. Cada objeto BackgroundTransferContentPart pode representar uma única cadeia de caracteres de conteúdo de texto ou uma única carga de arquivo, mas não ambas.

BackgroundTransferError

Usado para fornecer erros encontrados durante uma operação de transferência.

BackgroundTransferGroup

Um grupo nomeado usado para associar várias operações de download ou upload. Essa classe facilita a criação desses grupos pelo aplicativo e a conclusão de downloads e uploads simultaneamente, em série ou com base na prioridade.

Por exemplo, se um usuário decidir baixar e watch episódios de uma série de televisão popular, seu aplicativo poderá priorizar os primeiros episódios da série ou permitir que o usuário escolha qual episódio baixar primeiro.

BackgroundTransferRangesDownloadedEventArgs

Fornece acesso a informações sobre o evento de progresso do download incremental.

BackgroundUploader

Usado para configurar o upload antes da criação real da operação de upload usando CreateUpload. Para obter uma visão geral dos recursos de Transferência em Segundo Plano, confira Como transferir dados em segundo plano. Baixe o exemplo de transferência em segundo plano para um exemplo de código.

Observação

A Transferência em Segundo Plano foi projetada principalmente para operações de transferência de longo prazo para recursos como vídeo, música e imagens grandes. Para operações de curto prazo que envolvem transferências de recursos menores (ou seja, alguns KB), use o namespace Windows.Web.Http .

ContentPrefetcher

Fornece propriedades para especificar recursos da Web a serem pré-buscados. O Windows usará a heurística para tentar baixar os recursos especificados antes de seu aplicativo ser iniciado pelo usuário.

DownloadOperation

Executa uma operação de download assíncrona. O exemplo de transferência em segundo plano demonstra essa funcionalidade. Para obter uma visão geral dos recursos de Transferência em Segundo Plano, confira Como transferir dados em segundo plano.

ResponseInformation

Representa os dados retornados por uma resposta do servidor.

UnconstrainedTransferRequestResult

Representa o resultado de uma solicitação para transferências não treinadas de um objeto BackgroundDownloader ou BackgroundUploader .

As operações de transferência não treinadas podem ser executadas sem as restrições de recurso normalmente associadas às operações de rede em segundo plano enquanto um dispositivo está em execução na bateria.

UploadOperation

Executa uma operação de carregamento assíncrona. Para obter uma visão geral dos recursos de Transferência em Segundo Plano, confira Como transferir dados em segundo plano. Baixe o exemplo de transferência em segundo plano para um exemplo de código.

Estruturas

BackgroundDownloadProgress

Contém status informações sobre a operação de download.

BackgroundTransferFileRange

Contém status informações sobre a operação de transferência de arquivo.

BackgroundUploadProgress

Contém status informações sobre a operação de carregamento.

Interfaces

IBackgroundTransferBase

Representa uma operação de transferência em segundo plano.

IBackgroundTransferContentPartFactory

Cria um objeto BackgroundTransferContentPart .

IBackgroundTransferOperation

Representa uma operação de transferência em segundo plano.

IBackgroundTransferOperationPriority

Use essa interface para determinar a prioridade de downloads ou uploads em um BackgroundTransferGroup. Os valores possíveis são definidos pela enumeração BackgroundTransferPriority .

Enumerações

BackgroundTransferBehavior

Define valores usados para indicar se downloads e uploads em um BackgroundTransferGroup são executados simultaneamente ou em série.

BackgroundTransferCostPolicy

Define valores usados para especificar se as transferências podem ocorrer em redes limitadas.

BackgroundTransferPriority

Indica a prioridade que uma operação BackgroundTransfer (download ou upload) tem em termos de agendamento em um aplicativo.

BackgroundTransferStatus

Define valores de status de operação de transferência.

Comentários

Na maioria das plataformas, a Transferência em Segundo Plano continuará a transferir seus arquivos (baixar ou carregar) mesmo quando o aplicativo for suspenso ou quando ele for encerrado. Quando o aplicativo for iniciado, você deverá chamar BackgroundDownloader.GetCurrentDownloadsAsync ou BackgroundUploader.GetCurrentUploadsAsync para enumerar todas as suas transferências incompletas. Em seguida, chame DownloadOperation.AttachAsync ou UploadOperation.AttachAsync, respectivamente, em cada um deles. Isso recupera o estado mais recente da transferência e faz com que as transferências sejam retomadas após uma reinicialização do sistema. Quando DownloadOperation.IsRandomAccessRequired é true, o download é retomado automaticamente após uma reinicialização. Você deve chamar AttachAsync mesmo nesse caso. Se o aplicativo estiver em execução quando as transferências forem concluídas (ou seja, quando a chamada para AttachAsync retornar), você poderá trabalhar em resposta. Como alternativa, você pode usar BackgroundTransferCompletionGroup para iniciar uma tarefa em segundo plano quando as transferências forem concluídas.

No Xbox, a Transferência em Segundo Plano transfere apenas seus arquivos (download ou upload) enquanto o aplicativo está em primeiro plano. Quando um aplicativo é suspenso, colocado em segundo plano ou encerrado, as transferências em segundo plano do aplicativo são suspensas. Quando o aplicativo é executado em primeiro plano novamente, suas transferências são retomadas automaticamente.

Confira também