Condividi tramite


UpdateOrchestrator API

UpdateOrchestrator pianifica gli aggiornamenti software automatici tenendo presente l'impatto dell'utente. Questa API consente di specificare azioni, ad esempio il download o l'installazione, insieme ai relativi requisiti per eseguire gli aggiornamenti in un momento ottimale che riduce al minimo l'impatto dell'utente. Queste funzionalità traggono vantaggio in particolare dai sistemi a prestazioni inferiori con risorse di calcolo limitate o più lente.

Windows 20H1 include una soluzione di prima generazione per i casi d'uso degli aggiornamenti software automatici adottati dagli aggiornamenti del sistema operativo e dagli aggiornamenti delle app dello Store ed espone una versione iniziale di "Accesso limitato" di questa API per un set selezionato di aggiornamenti delle app "in modalità utente", come descritto di seguito.

Funzionalità

  • Registra dinamicamente gli aggiornamenti software

  • Richiama gli aggiornamenti software registrati durante i momenti ottimali, ad esempio durante l'assenza dell'utente, per aggiornare le "app in modalità utente".

  • Include la possibilità di "mantenere sveglio" l'alimentazione AC per ridurre ulteriormente l'impatto dell'utente.

Gruppo di destinatari per sviluppatori

Importante

L'API UpdateOrchestrator fa parte di una funzionalità di accesso limitato (vedere classe LimitedAccessFeatures). Per altre informazioni o per richiedere un token di sblocco, usare il modulo di richiesta token di accesso LAF.

Usa l'API UpdateOrchestrator se disponi già di aggiornamenti software in background per applicazioni win32 "modalità utente", ad esempio l'updater di Adobe per Acrobat Reader o Valve's Steam. Questa interfaccia non è necessaria per le applicazioni UWP/Store perché Microsoft Store sfrutta già questa funzionalità per gli aggiornamenti software.

Per offrire la migliore esperienza del cliente, questa versione iniziale dell'API ha come ambito un set selezionato di aggiornamenti registrati che soddisfano i criteri seguenti:

  • Aggiornamenti solo per le applicazioni in modalità utente
  • Non coinvolgere BIOS/Firmware/Dispositivo o Driver software
    • L'aggiornamento di bios, firmware o driver di dispositivo/software che non hanno superato criteri di qualità comuni rappresentano un rischio sostanziale, in particolare quando un utente non è presente.
  • La partecipazione all'utilizzo di questa API comporta la possibilità di garantire tutto il contenuto scaricato e installato dagli aggiornamenti software in background nei sistemi degli utenti tramite controlli.

La versione iniziale dell'API UpdateOrchestrator come funzionalità di accesso limitato è solo per gli aggiornamenti che soddisfano i criteri precedenti in questo momento.

Il nostro obiettivo è migliorare le funzionalità di questa API e ridurre l'impatto di più aggiornamenti software automatici in Windows. Microsoft apprezzerebbe l'input tramite questo breve sondaggio per comprendere in che modo l'API UpdateOrchestrator può soddisfare meglio le esigenze degli sviluppatori.

Accelerare le app OEM tramite il framework di Universal Orchestrator

Importante

Universal Orchestrator fornisce funzionalità agli OEM per registrare un'applicazione durante il processo di creazione dell'immagine per eseguire un'installazione/aggiornamento accelerato una tantum. Questa installazione viene eseguita entro 30 minuti dall'accesso di un utente a un nuovo dispositivo. Tenere presente che l'accelerazione di un'applicazione può avere un impatto negativo sulle prestazioni per l'esperienza predefinita per i nuovi dispositivi. Questa funzionalità è disponibile solo nelle build client selezionate e nelle aree selezionate.

Requisiti

Per accedere al framework app accelerato, l'app deve soddisfare i requisiti seguenti:

  • Deve essere un'app in pacchetto nello Store in formato MSIX
  • Deve avere un nome di famiglia di prodotti valido (PFN)

Registrazione

Gli OEM possono registrare un'applicazione per essere accelerata scrivendo una nuova chiave nella cartella di gestione temporanea esistente per le app rapide:

HKLM\Software\Microsoft\WindowsUpdate\Orchestrator\UScheduler_OOBE

Ogni registrazione fornita dall'OEM è sotto forma di sottochiave (con un nome univoco che verrà usato per identificare questa app accelerata) e un set di valori del Registro di sistema per indicare opzioni specifiche per questa applicazione. Il contenuto di ogni chiave è nel formato seguente:

Nome chiave: nome univoco per questa app accelerata

Nella sottochiave per la registrazione rapida dell'app, gli OEM devono creare due valori:

  • Nome valore: updaterPriority
    Descrizione: numero per indicare la priorità relativa dell'aggiornamento dell'applicazione
    Tipo di valore: REG_DWORD
    Dati: valore numerico compreso tra 1 e 100. I valori inferiori indicano una priorità relativa più alta per altre app rapide.

  • Nome valore: expeditedPayload
    Descrizione: BLOB JSON con opzioni per questo updater specifico
    Tipo di valore: REG_SZ
    Dati: stringa che rappresenta un BLOB JSON valido con opzioni per questo updater specifico

Panoramica del contenuto del BLOB JSON:

Provincia Type Nome chiave Descrizione
Richiesto String PFN Nome della famiglia di pacchetti dell'app (ad esempio, Microsoft.WindowsStore_8wekyb3d8bbwe)
Richiesto String Endpoint URI stringa che punta a una posizione che ospita un pacchetto MSIX. Deve essere un URI SSL che inizia con "https".
Facoltativo Booleano AllowedInOobe Indica se questa app accelerata deve essere eseguita durante la configurazione guidata dell'utente
Facoltativo Numero MaxRetryCount Numero di tentativi consentiti da questo updater dopo l'errore. Il valore predefinito è 1. Il valore massimo è 5.
Facoltativo Numero TimeoutDurationInMinutes Durata in minuti di attesa del completamento di questo aggiornamento. L'impostazione predefinita è 15. Il valore massimo è 30
Facoltativo Matrice (stringa) ExcludedRegions Matrice JSON di stringhe per le aree in cui l'app non deve essere accelerata. Ogni voce nella matrice corrisponde al codice paese ISO 3166-1 di 2 lettere dell'area desiderata. Ad esempio, ["US"] impedirebbe questo flusso nei dispositivi in cui l'area è Stati Uniti.

Payload JSON di esempio:

{  
    "PFN": "PFNName",  
    "Endpoint": "SSL_URI",  
    "AllowedInOobe": false,  
    "MaxRetryCount": 3,  
    "TimeoutDurationInMinutes": 15,  
    "ExcludedRegions": ["CN", "FR"]   
}

Esecuzione

Il framework di Universal Orchestrator richiama automaticamente ogni app registrata, in sequenza in base alla priorità relativa, entro i primi 30 minuti da un utente che raggiunge desktop in un nuovo dispositivo (o durante la configurazione guidata utente se AllowedInOobe è impostato su true). Ogni applicazione registrata aggiunta dal processo di registrazione OEM verrà tentata fino a quando:

  • L'installazione è stata completata
  • Supera la quantità massima di errori specificati in MaxRetryCount. Dopo ogni errore, l'app immetterà un periodo di raffreddamento di 30 minuti prima di riprovare.

Il framework di Universal Orchestrator non eseguirà tentativi accelerati se si verifica una delle condizioni seguenti:

  • Il dispositivo non ha accesso a Internet
  • Il dispositivo si trova in una rete a consumo
  • Il dispositivo è a batteria e il risparmio batteria è abilitato
  • Il dispositivo è configurato con criteri di traffico di rete con restrizioni di Windows Update
  • Il dispositivo è configurato con un criterio CTA che non è impostato per AutoApprove

In ognuno di questi casi, il framework di Universal Orchestrator manterrà le registrazioni sul posto fino a quando la configurazione del dispositivo non consente tentativi accelerati di continuare.

Importante

Prestare attenzione quando si sceglie di accelerare le app tramite questo framework, poiché le operazioni di aggiornamento si verificano quando il dispositivo può essere in uso e può causare un impatto negativo sulle prestazioni dell'esperienza utente in un nuovo dispositivo.