Condividi tramite


DeviceServicingTrigger Classe

Definizione

Rappresenta un evento che un'applicazione può attivare per avviare un aggiornamento a esecuzione prolungata (firmware o impostazioni) di un dispositivo.

Windows 8.1 consente di sviluppare app UWP per i dispositivi periferici che comunicano tramite USB, HID e Bluetooth. Ad esempio, un utente potrebbe dover sincronizzare il contenuto in un PC da o verso il dispositivo oppure eseguire un aggiornamento a esecuzione prolungata al dispositivo stesso, ad esempio impostazioni o aggiornamenti del firmware. Windows 8.1 fornisce due attività in background e le API corrispondenti che consentono al dispositivo di sincronizzare e aggiornare in background: DeviceServicingTrigger e DeviceUseTrigger. Questo argomento fornisce informazioni di riferimento sulle API per DeviceServicingTrigger: per informazioni sull'uso di questo trigger nel contesto di un'app per dispositivi, vedi Sincronizzazione del dispositivo e aggiornamento per le app per dispositivi UWP.

L'attività in background DeviceServicingTrigger consente all'app UWP che interagisce con il dispositivo periferico di eseguire aggiornamenti del dispositivo a esecuzione prolungata mentre l'app è sospesa, ad esempio i trasferimenti di impostazioni o gli aggiornamenti del firmware. L'aggiornamento del dispositivo in background richiede l'approvazione dell'utente ogni volta che viene usata l'attività in background. A differenza dell'attività in background DeviceUseTrigger , l'attività in background DeviceServicingTrigger consente il riavvio e la disconnessione del dispositivo e consente un massimo di 30 minuti di attività in background.

Importante

Questo trigger non può essere usato con attività in background a processo singolo.

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
Ereditarietà
Object Platform::Object IInspectable DeviceServicingTrigger
Attributi
Implementazioni

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)

Commenti

Alcuni criteri vengono applicati da Windows per garantire il consenso dell'utente durante l'aggiornamento dei dispositivi periferici. Altri criteri vengono applicati per preservare il livello di carica della batteria durante la sincronizzazione e l'aggiornamento di dispositivi periferici. L'attività in background DeviceServicingTrigger è soggetta ai criteri seguenti:

  • L'attività in background DeviceServicingTrigger richiede il consenso dell'utente ogni volta che viene attivato.
  • Il dispositivo deve essere connesso o associato al PC e disponibile quando si richiede DeviceServicingTrigger.
  • L'app è consentita al massimo 30 minuti (orologio a parete) dell'attività in background per gli aggiornamenti dei dispositivi con DeviceServicingTrigger
  • L'app non può richiedere un'attività in background DeviceServicingTrigger mentre l'app non è in primo piano.
  • L'app può eseguire un solo DeviceServicingTrigger alla volta. Il tentativo di creare un secondo DeviceServicingTrigger genererà un'eccezione.
  • La batteria del PC deve avere più del 33% di capacità rimanente oppure il PC deve essere in alimentazione A/C.
  • Le attività in background DeviceServicingTrigger possono essere annullate da Windows quando questi requisiti dei criteri non sono più soddisfatti, inclusa una quantità massima di tempo in background dell'orologio a parete.

Nota

Anche l'app UWP che intende usare l'attività in background DeviceServicingTrigger deve essere un'app con privilegi per il dispositivo. Il privilegio dell'app viene specificato nei metadati del dispositivo per un dispositivo periferico dal produttore del dispositivo. Quando un'app UWP tenta di attivare l'attività in background DeviceServicingTrigger , Windows convaliderà che l'app chiamante sia l'app con privilegi per il dispositivo che sta tentando di aggiornare. Se l'app non ha privilegi per il dispositivo, Windows non consentirà l'avvio dell'attività in background.

Per informazioni dettagliate sui privilegi delle app e sui controlli dei criteri applicati da Windows per l'attività in background DeviceServicingTrigger , vedi Sincronizzazione dei dispositivi e aggiornamento per le app per dispositivi UWP.

Costruttori

DeviceServicingTrigger()

Costruttore per DeviceServicingTrigger. Non accetta parametri.

Metodi

RequestAsync(String, TimeSpan)

Attiva l'attività in background (impostazioni o aggiornamento del firmware) e restituisce un oggetto DeviceTriggerResult che indica l'esito positivo o negativo della richiesta di trigger. Accetta la stringa DeviceInformation.ID e un tempo stimato facoltativo per l'esecuzione dell'attività in background. Se l'app non è in grado di determinare una stima temporale appropriata, specificare zero come tempo stimato.

RequestAsync(String, TimeSpan, String)

Attiva l'attività in background (impostazioni o aggiornamento del firmware) e restituisce un oggetto DeviceTriggerResult che indica l'esito positivo o negativo della richiesta di trigger. Accetta la stringa DeviceInformation.ID , un tempo stimato facoltativo per l'esecuzione dell'attività in background e una stringa facoltativa specifica dell'app passata all'attività in background che identifica l'operazione del dispositivo da eseguire. Se l'app non è in grado di determinare una stima temporale appropriata, specificare zero come tempo stimato.

Si applica a

Vedi anche