DeviceServicingTrigger Clase

Definición

Representa un evento que una aplicación puede desencadenar para iniciar una actualización de larga duración (firmware o configuración) de un dispositivo.

Windows 8.1 permite desarrollar aplicaciones para UWP para los dispositivos periféricos que se comunican a través de USB, HID y Bluetooth. Por ejemplo, es posible que un usuario tenga que sincronizar contenido en un equipo con o desde el dispositivo, o realizar una actualización de larga duración en el propio dispositivo, como la configuración o las actualizaciones de firmware. Windows 8.1 proporciona dos tareas en segundo plano y las API correspondientes que permiten que el dispositivo se sincronice y actualice en segundo plano: DeviceServicingTrigger y DeviceUseTrigger. En este tema se proporciona información de referencia de API para DeviceServicingTrigger: para obtener información sobre el uso de este desencadenador en el contexto de una aplicación de dispositivo, consulta Sincronización y actualización de dispositivos para aplicaciones para UWP.

La tarea en segundo plano DeviceServicingTrigger permite que la aplicación para UWP que interactúe con el dispositivo periférico realice actualizaciones de dispositivos de larga duración mientras la aplicación está suspendida, por ejemplo, transferencias de configuración o actualizaciones de firmware. La actualización del dispositivo en segundo plano requiere aprobación del usuario cada vez que se usa la tarea en segundo plano. A diferencia de la tarea en segundo plano DeviceUseTrigger , la tarea en segundo plano DeviceServicingTrigger permite reiniciar y desconectar el dispositivo y permite un máximo de 30 minutos de actividad en segundo plano.

Importante

Este desencadenador no se puede usar con tareas en segundo plano de proceso único.

public ref class DeviceServicingTrigger sealed
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DeviceServicingTrigger final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class DeviceServicingTrigger final
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class DeviceServicingTrigger
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class DeviceServicingTrigger
function DeviceServicingTrigger()
Public NotInheritable Class DeviceServicingTrigger
Herencia
Object Platform::Object IInspectable DeviceServicingTrigger
Atributos
Implementaciones

Requisitos de Windows

Familia de dispositivos
Windows 10 (se introdujo en la versión 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (se introdujo en la versión v1.0)

Comentarios

Windows aplica determinadas directivas para garantizar el consentimiento del usuario al actualizar sus dispositivos periféricos. Se aplican directivas adicionales para ahorrar batería al sincronizar y actualizar dispositivos periféricos. La tarea en segundo plano DeviceServicingTrigger está sujeta a las siguientes directivas:

  • La tarea en segundo plano DeviceServicingTrigger requiere consentimiento del usuario cada vez que se desencadena.
  • El dispositivo debe estar conectado o emparejado con el equipo y disponible al solicitar DeviceServicingTrigger.
  • La aplicación puede tener un máximo de 30 minutos (reloj) de actividad en segundo plano para las actualizaciones de dispositivos con DeviceServicingTrigger.
  • La aplicación no puede solicitar una tarea en segundo plano DeviceServicingTrigger mientras la aplicación no está en primer plano.
  • La aplicación solo puede ejecutar un deviceServicingTrigger a la vez. Si intenta crear un segundo DeviceServicingTrigger , se producirá una excepción.
  • La batería del equipo debe tener más de 33% de capacidad restante, o el PC debe estar en alimentación A/C.
  • Windows puede cancelar las tareas en segundo plano de DeviceServicingTrigger cuando estos requisitos de directiva ya no se cumplen, incluida una cantidad máxima de tiempo de fondo del reloj.

Nota:

La aplicación para UWP que pretende usar la tarea en segundo plano DeviceServicingTrigger también debe ser una aplicación con privilegios para el dispositivo. El fabricante del dispositivo especifica el privilegio de la aplicación en los metadatos del dispositivo periférico. Cuando una aplicación para UWP intenta desencadenar la tarea en segundo plano DeviceServicingTrigger , Windows validará que la aplicación que realiza la llamada es la aplicación con privilegios para el dispositivo que intenta actualizar. Si la aplicación no tiene privilegios para el dispositivo, Windows no permitirá que se inicie la tarea en segundo plano.

Para obtener información detallada sobre los privilegios de la aplicación y las comprobaciones de directivas aplicadas por Windows para la tarea en segundo plano DeviceServicingTrigger , consulta Sincronización y actualización de dispositivos para aplicaciones para dispositivos para UWP.

Constructores

DeviceServicingTrigger()

Constructor para DeviceServicingTrigger. No toma parámetros.

Métodos

RequestAsync(String, TimeSpan)

Desencadena la tarea en segundo plano (configuración o actualización de firmware) y devuelve un DeviceTriggerResult que indica que la solicitud del desencadenador se ha realizado correctamente o no. Toma la cadena de DeviceInformation.ID y una hora estimada opcional en que se ejecutará la tarea en segundo plano. Si la aplicación no puede determinar una estimación de tiempo adecuada, proporcione cero como tiempo estimado.

RequestAsync(String, TimeSpan, String)

Desencadena la tarea en segundo plano (configuración o actualización de firmware) y devuelve un DeviceTriggerResult que indica que la solicitud del desencadenador se ha realizado correctamente o no. Toma la cadena de DeviceInformation.ID , un tiempo estimado opcional en el que se ejecutará la tarea en segundo plano y una cadena opcional específica de la aplicación que se pasa a la tarea en segundo plano que identifica qué operación de dispositivo se va a realizar. Si la aplicación no puede determinar una estimación de tiempo adecuada, proporcione cero como tiempo estimado.

Se aplica a

Consulte también