Windows.Networking.BackgroundTransfer Espacio de nombres

Habilita las funcionalidades avanzadas de descarga y transferencia de carga dentro de una aplicación. Para obtener información general sobre las funcionalidades de transferencia en segundo plano, consulte Transferencia de datos en segundo plano. Descargue el ejemplo de transferencia en segundo plano para obtener un ejemplo de código.

Nota:

La transferencia en segundo plano está diseñada principalmente para operaciones de transferencia a largo plazo para recursos como vídeo, música y imágenes grandes. En el caso de las operaciones a corto plazo que implican transferencias de recursos más pequeños (es decir, un par de KB), se recomiendan las API HTTP. Se prefiere HttpClient y se puede usar en todos los idiomas admitidos por las aplicaciones para UWP. XHR se puede usar en JavaScript. IXHR2 se puede usar en C++.

Clases

BackgroundDownloader

Se usa para configurar las descargas antes de la creación real de la operación de descarga mediante CreateDownload. Para obtener información general sobre las funcionalidades de transferencia en segundo plano, consulte Transferencia de datos en segundo plano. Descargue el ejemplo de transferencia en segundo plano para obtener un ejemplo de código.

Nota:

La transferencia en segundo plano está diseñada principalmente para operaciones de transferencia a largo plazo para recursos como vídeo, música y imágenes grandes. Para las operaciones a corto plazo que implican transferencias de recursos más pequeños (es decir, un par de KB), use el espacio de nombres Windows.Web.Http .

BackgroundTransferCompletionGroup

Representa un conjunto de operaciones de transferencia en segundo plano (objetos DownloadOperation o UploadOperation ) que desencadenan una tarea en segundo plano una vez que se realizan todas las operaciones (si las operaciones se completan correctamente) o producen un error.

BackgroundTransferCompletionGroupTriggerDetails

Contiene información sobre backgroundTransferCompletionGroup a la que solo se puede tener acceso desde el método Run en IBackgroundTask.

BackgroundTransferContentPart

Representa una parte de contenido de una solicitud de transferencia de varias partes. Cada objeto BackgroundTransferContentPart puede representar una sola cadena de contenido de texto o una sola carga de archivo, pero no ambas.

BackgroundTransferError

Se usa para proporcionar errores detectados durante una operación de transferencia.

BackgroundTransferGroup

Un grupo con nombre que se usa para asociar varias operaciones de descarga o carga. Esta clase facilita que la aplicación cree estos grupos y complete las descargas y cargas simultáneamente, en serie o en función de la prioridad.

Por ejemplo, si un usuario decide descargar y watch episodios de una serie de televisión popular, la aplicación puede priorizar los primeros episodios de la serie o permitir al usuario elegir qué episodio descargar primero.

BackgroundTransferRangesDownloadedEventArgs

Proporciona acceso a información sobre el evento de progreso de descarga incremental.

BackgroundUploader

Se usa para configurar la carga antes de la creación real de la operación de carga mediante CreateUpload. Para obtener información general sobre las funcionalidades de transferencia en segundo plano, consulte Transferencia de datos en segundo plano. Descargue el ejemplo de transferencia en segundo plano para obtener un ejemplo de código.

Nota:

La transferencia en segundo plano está diseñada principalmente para operaciones de transferencia a largo plazo para recursos como vídeo, música y imágenes grandes. Para las operaciones a corto plazo que implican transferencias de recursos más pequeños (es decir, un par de KB), use el espacio de nombres Windows.Web.Http .

ContentPrefetcher

Proporciona propiedades para especificar los recursos web que se van a capturar previamente. Windows usará heurística para intentar descargar los recursos especificados antes de que el usuario inicie la aplicación.

DownloadOperation

Realiza una operación de descarga asincrónica. En el ejemplo de transferencia en segundo plano se muestra esta funcionalidad. Para obtener información general sobre las funcionalidades de transferencia en segundo plano, consulte Transferencia de datos en segundo plano.

ResponseInformation

Representa los datos devueltos por una respuesta del servidor.

UnconstrainedTransferRequestResult

Representa el resultado de una solicitud de transferencias sin restricciones desde un objeto BackgroundDownloader o BackgroundUploader .

Las operaciones de transferencia sin restricciones se pueden ejecutar sin las restricciones de recursos normalmente asociadas a las operaciones de red en segundo plano mientras un dispositivo se ejecuta con batería.

UploadOperation

Realiza una operación de carga asincrónica. Para obtener información general sobre las funcionalidades de transferencia en segundo plano, consulte Transferencia de datos en segundo plano. Descargue el ejemplo de transferencia en segundo plano para obtener un ejemplo de código.

Estructuras

BackgroundDownloadProgress

Contiene información de estado sobre la operación de descarga.

BackgroundTransferFileRange

Contiene información de estado sobre la operación de transferencia de archivos.

BackgroundUploadProgress

Contiene información de estado sobre la operación de carga.

Interfaces

IBackgroundTransferBase

Representa una operación de transferencia en segundo plano.

IBackgroundTransferContentPartFactory

Crea un objeto BackgroundTransferContentPart .

IBackgroundTransferOperation

Representa una operación de transferencia en segundo plano.

IBackgroundTransferOperationPriority

Use esta interfaz para determinar la prioridad de las descargas o cargas dentro de backgroundTransferGroup. Los valores posibles se definen mediante la enumeración BackgroundTransferPriority .

Enumeraciones

BackgroundTransferBehavior

Define los valores usados para indicar si las descargas y cargas dentro de un BackgroundTransferGroup se ejecutan simultáneamente o en serie.

BackgroundTransferCostPolicy

Define los valores usados para especificar si se pueden producir transferencias en redes de uso medido.

BackgroundTransferPriority

Indica la prioridad que tiene una operación BackgroundTransfer (descarga o carga) en términos de programación dentro de una aplicación.

BackgroundTransferStatus

Define los valores de estado de la operación de transferencia.

Comentarios

En la mayoría de las plataformas, la transferencia en segundo plano seguirá transfiriendo los archivos (descargar o cargar) incluso cuando se suspenda la aplicación o cuando salga. Cuando se inicie la aplicación, debes llamar a BackgroundDownloader.GetCurrentDownloadsAsync o BackgroundUploader.GetCurrentUploadsAsync para enumerar todas las transferencias incompletas. A continuación, llame a DownloadOperation.AttachAsync o UploadOperation.AttachAsync, respectivamente, en cada uno de ellos. Al hacerlo, se recupera el estado más reciente de la transferencia y se reanudan las transferencias después de un reinicio del sistema. Cuando DownloadOperation.IsRandomAccessRequired es true, la descarga se reanuda automáticamente después de un reinicio. Debe llamar a AttachAsync incluso en ese caso. Si la aplicación se ejecuta cuando se completan las transferencias (es decir, cuando vuelve la llamada a AttachAsync ), puede realizar el trabajo en respuesta. Como alternativa, puede usar BackgroundTransferCompletionGroup para iniciar una tarea en segundo plano cuando se completen las transferencias.

En Xbox, La transferencia en segundo plano solo transfiere los archivos (descargar o cargar) mientras la aplicación está en primer plano. Cuando se suspende una aplicación, se coloca en segundo plano o se ha salido, se suspenden las transferencias en segundo plano de la aplicación. Cuando la aplicación se ejecuta en primer plano de nuevo, sus transferencias se reanudan automáticamente.

Consulte también