Che cos'è un'app UWP (Universal Windows Platform)?

App universali di Windows eseguite su un'ampia gamma di dispositivi, supportano un'interfaccia utente adattiva, l'input dell'utente naturale, uno store, Centro per i partner e ai servizi cloud

Un'app UWP è:

  • Sicura: le app UWP dichiarano le risorse del dispositivo e i dati a cui accedono. L'utente deve autorizzare tale accesso.
  • In grado di usare un'API comune in tutti i dispositivo che eseguono Windows 10.
  • In grado di usare funzionalità specifiche del dispositivo e adattare l'interfaccia utente a dimensioni dello schermo, risoluzioni e DPI vari.
  • Disponibile nel Microsoft Store in tutti i dispositivi (o solo a quelli specificati) che eseguono Windows 10. Il Microsoft Store offre diversi modi per realizzare profitti con la tua app.
  • In grado di essere installata e disinstallata senza rischio o danni per il computer.
  • Coinvolgente: puoi usare riquadri animati, notifiche push e attività utente che interagiscono con Sequenza temporale di Windows e la funzionalità di ripristino della ricerca dal punto in cui è stata interrotta di Cortana per coinvolgere gli utenti.
  • Programmabile in C#, C++, Visual Basic e Javascript. Per l'interfaccia utente, usa XAML, HTML o DirectX.

Diamo un'occhiata a queste caratteristiche nel dettaglio.

Sicura

Le app UWP dichiarano nel proprio manifesto le funzionalità del dispositivo di cui necessitano, ad esempio l'accesso al microfono, alla posizione, alla Webcam, ai dispositivi USB, ai file e così via. L'utente deve accettare e autorizzare tale accesso prima che all'app sia consentito l'uso della funzionalità.

Una superficie API comune per tutti i dispositivi

Windows 10 introduce la piattaforma UWP (Universal Windows), che offre una piattaforma per app comune su ogni dispositivo che esegue Windows 10. Le API di base UWP sono le stesse in tutti i dispositivi Windows. Se l'app Usa solo le API di base, funzionerà in qualsiasi dispositivo Windows 10, indipendentemente dal fatto sono destinati a un PC desktop, Xbox, visore VR realtà mista e così via.

Un'app UWP scritta in C++ /WinRT o C++ /CX ha accesso alle API Win32 che fanno parte della piattaforma UWP. Queste API Win32 sono implementate in tutti i dispositivi Windows 10.

Gli SDK di estensione espongono le funzionalità esclusive di tipi di dispositivi specifici

Se la destinazione sono le API universali, l'app può essere eseguita in tutti i dispositivi che eseguono Windows 10. L'app UWP può comunque usufruire anche delle API specifiche del dispositivo.

Gli SDK di estensione permettono di chiamare API specializzate per dispositivi diversi. Se, ad esempio, l'app UWP è destinata a un dispositivo IoT, puoi aggiungere l'SDK di estensione IoT al tuo progetto per usufruire delle funzionalità specifiche dei dispositivi IoT. Per altre informazioni sull'aggiunta di SDK di estensione, vedi la sezione SDK di estensione in Panoramica delle famiglie di dispositivi.

Puoi scrivere l'app in modo che venga eseguita solo su un particolare tipo di dispositivo, quindi limitarne la distribuzione nel Microsoft Store a solo quel tipo di dispositivo. In alternativa, puoi eseguire test condizionali sulla presenza di un'API in fase di esecuzione e adattare il comportamento dell'app di conseguenza. Per altre informazioni, vedi la sezione Scrittura di codice in Panoramica delle famiglie di dispositivi.

Il video seguente offre una breve panoramica delle famiglie di dispositivi e della scrittura di codice adattivo:

Input e controlli adattivi

Gli elementi dell'interfaccia utente rispondono alle dimensioni e ai DPI dello schermo regolando il layout e le proporzioni dell'app. Le app UWP funzionano bene con più tipi di input, ad esempio tastiera, mouse, tocco, penna e controller Xbox One. Se devi personalizzare ulteriormente l'interfaccia utente in base a dimensioni di schermo o dispositivi specifici, sono disponibili nuovi strumenti e pannelli di layout che ti permettono di progettare un'interfaccia utente in grado di adattarsi ai vari dispositivi e fattori di forma su cui la tua app potrebbe essere in esecuzione.

Dispositivi Windows

Con le funzionalità seguenti Windows ti aiuta a progettare l'interfaccia utente per più dispositivi di destinazione:

  • Controlli universali e pannelli di layout facilitano l'ottimizzazione dell'interfaccia utente in base alla risoluzione dello schermo del dispositivo. I controlli come i pulsanti e i dispositivi di scorrimento, ad esempio, si adattano automaticamente alla densità DPI e alle dimensioni dello schermo del dispositivo. I pannelli di layout aiutano a regolare il layout del contenuto in base alle dimensioni dello schermo. Il ridimensionamento adattivo si modifica in base alle differenze di risoluzione e DPI di più dispositivi.
  • La gestione comune dell'input permette di ricevere l'input tramite tocco, una penna, un mouse o una tastiera oppure un controller come quello di Microsoft Xbox.
  • Strumenti che facilitano la progettazione dell'interfaccia utente in modo che si adatti alle diverse risoluzioni dello schermo.

Alcuni aspetti dell'interfaccia utente della tua app si adatteranno automaticamente a più dispositivi. Potrebbe tuttavia essere necessario adattare la progettazione dell'esperienza utente della tua app in base al dispositivo su cui viene eseguita. Un'app di foto, ad esempio, dovrebbe adattare l'interfaccia utente quando viene eseguita su un piccolo dispositivo palmare, per garantirne un utilizzo ideale con una sola mano. Quando l'app di foto viene eseguita su un computer desktop, l'interfaccia utente dovrebbe adattarsi per sfruttare al meglio lo spazio aggiuntivo sullo schermo.

Esiste un solo Store per tutti i dispositivi

Uno store per app unificato rende disponibile l'app nei dispositivi Windows 10, ad esempio PC, tablet, Xbox, HoloLens, Surface Hub e dispositivi Internet delle cose (IoT). Puoi inviare la tua app allo Store e renderla disponibile per tutti i tipi di dispositivi o soltanto per quelli che scegli tu. In questo modo, invierai e gestirai tutte le tue app per i dispositivi Windows in un'unica posizione. Hai un'app desktop C++ che desideri modernizzare con funzionalità della piattaforma UWP e vendere nel Microsoft Store? Nessun problema.

Le app UWP si integrano con Application Insights per l'analisi e i dati di telemetria dettagliati, uno strumento strategico per capire i tuoi utenti e migliorare le tue app.

Monetizzare la tua app

Puoi scegliere come monetizzare la tua app. Esistono diversi modi per realizzare profitti con la tua app. Tutto quello che devi fare è scegliere quello che per te è il migliore, ad esempio:

  • Il download a pagamento è la soluzione più semplice. Ti basta indicare il prezzo.
  • Le versioni di valutazione consentono agli utenti di provare la tua app prima di acquistarla e offrono opportunità di esposizione e conversione più semplici rispetto alle più tradizionali opzioni "freemium".
  • Prezzi di vendita per accattivarsi gli utenti.
  • Sono disponibili anche acquisti in-app e annunci.

Le app nel Microsoft Store sono facili da installare, disinstallare e aggiornare

Tutte le app UWP vengono distribuite mediante un sistema di creazione di pacchetti che protegge l'utente, il dispositivo e il sistema. Gli utenti non si pentono di avere installato un'app perché, quando vengono disinstallate, le app UWP non si lasciano dietro alcun elemento eccetto i documenti creati con il loro utilizzo.

Le app possono essere distribuite e aggiornate senza problemi. La creazione dei pacchetti delle app può essere suddivisa in moduli in modo che sia possibile scaricare contenuto ed estensioni su richiesta.

Offri informazioni pertinenti e in tempo reale agli utenti per invogliarli a tornare

Esistono molti modi per mantenere alto l'interesse degli utenti verso la tua app UWP:

  • Riquadri animati e riquadri nella schermata di blocco che presentano informazioni contestualmente rilevanti e tempestive.
  • Notifiche push che visualizzano avvisi importanti in tempo reale per attirare l'attenzione dell'utente.
  • Le attività utente consentono agli utenti di riprendere da dove avevano lasciato, anche cambiando dispositivo.
  • Il centro notifiche organizza le notifiche dall'app.
  • Con l'esecuzione in background e i trigger la tua app si attiva quando serve all'utente.
  • La tua app può usare dispositivi vocali e Bluetooth a basso consumo per aiutare gli utenti a interagire con il mondo che li circonda.
  • Integra Cortana per aggiungere la funzionalità dei comandi vocali all'app.

Usa un linguaggio che già conosci

Le app UWP usano Windows Runtime, un'API nativa fornita dal sistema operativo. Questa API è implementata in C++ ed è supportata in C#, Visual Basic, C++ e JavaScript. Alcune opzioni per la scrittura di app UWP includono:

  • Interfaccia utente XAML e C#, VB o C++
  • Interfaccia utente DirectX e C++
  • JavaScript e HTML

Configurazione

Vedi Per iniziare per scaricare gli strumenti necessari per iniziare a creare app e, successivamente, scrivere la prima app.

Progettare l'app

Il sistema di progettazione Microsoft si chiama Fluent. Il sistema Fluent Design è un set di funzionalità UWP e procedure consigliate per la creazione di app che funzionano in modo ottimale in tutti i tipi di dispositivi Windows. Le esperienze con Fluent si adattano perfettamente sui tutti i dispositivi, dai tablet ai portatili, dai PC ai televisori e ai dispositivi di realtà virtuale. Per un'introduzione su Fluent Design, vedi Sistema Fluent Design per app UWP.

Una buona progettazione è il processo durante il quale decidi in che modo gli utenti interagiranno con la tua app, quale sarà il suo aspetto e come funzionerà. L'esperienza utente ha un ruolo fondamentale nella determinazione del livello di gradimento dell'app da parte degli utenti, quindi non trascurare questo passaggio. Nozioni di base sulla progettazione offre un’introduzione alla progettazione di un'app di Windows universale. Per informazioni sulla progettazione di app UWP apprezzate dagli utenti, vedi Introduzione alle app UWP (Universal Windows Platform) per i progettisti. Prima di iniziare a scrivere codice, vedi le informazioni di base sui dispositivi che ti aiuteranno a valutare attentamente l’esperienza di interazione per l’uso dell’app in tutti i diversi fattori di forma che sceglierai come destinazione.

Oltre all'interazione su dispositivi diversi, pianifica la tua app in modo da cogliere i vantaggi del funzionamento tra più dispositivi. Ad esempio:

Aggiungere servizi

Invia la tua app allo Store

Centro per i partner puoi gestire e inviare tutte le tue App per i dispositivi Windows in un'unica posizione. Vedi i giochi e pubblicare app di Windows per informazioni su come inviare la tua App per la pubblicazione in Microsoft Store.

Le nuove funzionalità semplificano i processi e al tempo stesso ti garantiscono un maggiore controllo. Puoi anche trovare report analitici dettagliati, informazioni combinate sui proventi, soluzioni per promuovere la tua app e interagire con i clienti e molto altro ancora.

Per altro materiale introduttivo, vedi Introduzione alla creazione di app per dispositivi Windows10

Argomenti più avanzati

Come interagisce con la piattaforma UWP APIs di Windows Runtime

Se stai creando un'app della piattaforma UWP (Universal Windows), è possibile ottenere numerose chilometri percorsi e comodità esplicitamente trattando i termini "della piattaforma UWP (Universal Windows)" e "Windows Runtime (WinRT)" come sinonimi più o meno. Ma è possibile aspetto dietro le quinte della tecnologia e determinare semplicemente la differenza tra queste idee. Se interessi saperlo, che, in questa sezione ultima è per te.

Windows Runtime e APIs WinRT, sono un'evoluzione delle API di Windows. Windows è stato originariamente, programmate tramite piatta, le API Win32 stile C. A quelle sono stati aggiunti APIs COM (DirectX in un esempio ben evidente). Nei linguaggi gestiti, .NET, WPF e Windows Form portare i propri modo per la scrittura di App di Windows e i propri gusto della tecnologia di API. Windows Runtime è dietro le quinte, la fase successiva di COM. A livello di applicazione effettivo ABI (binary interface), le sue radici in COM diventano visibili. Ma Windows Runtime è stato progettato per essere chiamata da un'ampia gamma di diversi linguaggi di programmazione. E può essere chiamata in modo che è estremamente naturale per ognuno di questi linguaggi. A tal fine, l'accesso a Windows Runtime verrà resi disponibile tramite cosa sono noti come proiezioni di linguaggio. C'è una proiezione di linguaggio Windows Runtime in c#, in Visual Basic, c++ standard, in JavaScript e così via. Inoltre, una volta in pacchetto in modo appropriato (vedi Desktop Bridge), puoi chiamare APIs WinRT da un'app creata in una di un'ampia gamma di modelli di applicazione: Win32, .NET, Windows Forms e WPF.

E, naturalmente, puoi chiamare APIs WinRT dalla tua app UWP. UWP è un modello di applicazione basato Windows Runtime. Tecnicamente, il modello di applicazione UWP si basa su CoreApplication, anche se potrebbe infatti essere nascosta che questo dettaglio da te, a seconda del linguaggio di programmazione scelto. Come è illustrato in questo argomento, da un punto di vista della proposta di valore, la piattaforma UWP si presta alla scrittura di un singolo file binario che può, qualora tu scelga, essere pubblicato in Microsoft Store ed eseguito su una qualsiasi di un'ampia gamma di fattori di forma dei dispositivi. Raggiungere i dispositivi della tua app UWP dipende il sottoinsieme di API UWP che puoi limitare l'app alla chiamata o che chiamare in modo condizionale.

In questa sezione fortuna, è stata corretta per descrivere la differenza tra la tecnologia sottostante APIs Windows Runtime e il meccanismo e il valore di business della piattaforma UWP.