Eseguire test con l'emulatore Microsoft per Windows 10 Mobile

Simulare le interazioni che avvengono realmente con un dispositivo e testare le funzionalità dell’app usando gli strumenti inclusi nell'emulatore Microsoft per Windows 10 Mobile. L'emulatore è un'applicazione desktop che emula un dispositivo mobile in cui è in esecuzione Windows 10. Fornisce un ambiente virtualizzato in cui è possibile eseguire il debug e il test delle app di Windows senza usare un dispositivo fisico. Offre inoltre un ambiente isolato per i prototipi di applicazioni.

L'emulatore è progettato per offrire prestazioni analoghe a quelle di un dispositivo vero e proprio. Prima di pubblicare la tua app in Microsoft Store, ti consigliamo tuttavia di testarla su un dispositivo fisico.

È possibile testare l’app universale con un'immagine univoca dell'emulatore per Windows 10 Mobile per diverse configurazioni della risoluzione dello schermo e delle dimensioni dello schermo. È possibile simulare le interazioni che avvengono realmente con un dispositivo e testare le diverse funzionalità dell’app usando gli strumenti inclusi nell'emulatore Microsoft.

Requisiti di sistema

Il computer deve soddisfare i seguenti requisiti:

CPU (queste impostazioni, se disponibili, possono essere abilitate nel BIOS)

  • Virtualizzazione assistita mediante hardware.
  • Conversione indirizzi di secondo livello (SLAT)
  • Protezione esecuzione programmi basata su hardware.

RAM

  • Almeno 4 GB.

Sistema operativo

  • Windows 10 o versione successiva
  • 64 bit
  • Edizione Pro o successiva

Vedere Installare Hyper-V in Windows 10.

Per controllare i requisiti della RAM e del sistema operativo, nel Pannello di controllo seleziona Sistema e sicurezza e quindi Sistema.

L'emulatore Microsoft per Windows 10 Mobile richiede Visual Studio 2015 o versione successiva. Non è compatibile con le versioni precedenti di Visual Studio.

L'emulatore Microsoft per Windows 10 Mobile non può caricare app destinate a versioni del sistema operativo Windows Phone precedenti a Windows Phone 7.1.

Installazione, disinstallazione ed esecuzione dell'emulatore

Installazione

L'emulatore di Windows 10 Mobile viene fornito come parte di Windows 10 SDK. Windows 10 SDK e l'emulatore possono essere installati durante l'installazione di Visual Studio. Vedere la pagina dei download di Visual Studio.

Disinstallazione

È possibile disinstallare l'emulatore Microsoft per Windows 10 Mobile con l'installazione/ripristino di Visual Studio. Oppure è possibile usare Programmi e funzionalità nel Pannello di controllo per rimuovere l’emulatore.

Quando si disinstalla l'emulatore Microsoft per Windows 10 Mobile, la scheda Ethernet virtuale Hyper-V creata per l'emulatore non viene rimossa automaticamente. È possibile rimuovere manualmente questa scheda virtuale da Connessioni di rete nel Pannello di controllo.

In esecuzione

Per eseguire un'app nell'emulatore, è sufficiente selezionare un dispositivo emulato dal menu a discesa di esecuzione in Visual Studio.

Available emulators with resolution, size, and memory

Novità dell'emulatore Microsoft per Windows 10 Mobile

Oltre al supporto per Universal Windows Platform (UWP), all'emulatore sono state aggiunte le seguenti funzionalità:

  • Supporto per la modalità di input tramite mouse per distinguere l'input tramite mouse e tramite tocco singolo.
  • Supporto per NFC. L'emulatore consente di simulare la tecnologia NFC e di testare e sviluppare app universali abilitate per NFC/prossimità.
  • L'accelerazione hardware nativa migliora le prestazioni grafiche nell'emulatore usando la scheda grafica locale. Per usare l'accelerazione, è necessario avere una scheda grafica supportata installata, nonché abilitare l'accelerazione nella scheda Sensori dell'interfaccia utente delle impostazioni Strumenti aggiuntivi dell'emulatore.

Funzionalità che è possibile testare nell'emulatore

Oltre alle nuove funzionalità indicate nella sezione precedente, è possibile testare le seguenti funzionalità usate comunemente nell'emulatore Microsoft per Windows 10 Mobile.

  • Risoluzione e dimensioni dello schermo e memoria. Preparare l’app per un vasto mercato testandola con varie immagini di emulatore per simulare risoluzioni dello schermo, dimensioni fisiche e vincoli di memoria diversi.

Available emulators with resolution, size, and memory

  • Configurazione dello schermo. Cambiare la modalità dell'emulatore da verticale a orizzontale. Cambiare anche l'impostazione dello zoom per adattare l'emulatore allo schermo desktop.

  • Reti. Nell'emulatore di Windows Phone è integrato il supporto delle funzionalità di rete. La rete è abilitata per impostazione predefinita. Non è quindi necessario installare driver di rete per l'emulatore di Windows Phone o configurare manualmente le opzioni di rete nella maggior parte degli ambienti.

    L'emulatore usa la connessione di rete del computer host. Non compare come dispositivo separato sulla rete.

  • Impostazioni lingua e all’area geografica. Preparare l’app per un mercato internazionale modificando le impostazioni della lingua visualizzata e dell'area geografica nell'emulatore di Windows Phone.

    Nell’emulatore in esecuzione accedere all’app Impostazioni, selezionare le impostazioni di sistema e poi selezionare lingua o area geografica. Modificare le impostazioni che si vogliono testare. Se richiesto, fare clic su riavviare il telefono per applicare le nuove impostazioni e riavviare l'emulatore.

  • Ciclo di vita e rimozione definitiva dell’applicazione. Testare il comportamento dell’app quando viene disattivata o rimossa definitivamente modificando il valore dell’opzione Rimozione definitiva al momento della disattivazione durante il debug nella pagina Debug delle proprietà del progetto.

  • Archiviazione nella cartella locale (nota in precedenza come spazio di memorizzazione isolato). I dati presenti nello spazio di memorizzazione isolato vengono mantenuti mentre l'emulatore è in esecuzione, ma vanno persi quando l'emulatore viene chiuso.

  • Microfono. Richiede e usa il microfono presente nel computer host.

  • Tastiera telefono. L'emulatore consente di mappare la tastiera hardware del computer di sviluppo alla tastiera di un dispositivo Windows Phone. Il comportamento dei tasti è uguale a quello in un dispositivo Windows Phone

  • Schermata di blocco. Con l'emulatore aperto, premere F12 due volte sulla tastiera del computer. Il tasto F12 emula il pulsante di accensione del telefono. La prima volta che si preme, lo schermo si spegne. La seconda volta, lo schermo si riaccende e viene visualizzata la schermata di blocco. Sbloccare lo schermo usando il mouse per far scorrere la schermata di blocco verso l'alto.

Funzionalità che non è possibile testare nell'emulatore

Le seguenti funzionalità sono testabili solo su un dispositivo fisico.

  • Bussola
  • Giroscopio
  • Controller vibrazione
  • Luminosità Il livello di luminosità dell'emulatore è sempre elevato.
  • Video ad alta risoluzione. I video con una risoluzione superiore alla risoluzione VGA (640 x 480) non possono essere visualizzati in modo ottimale, soprattutto per le immagini di emulatore con una memoria di soli 512 MB.

Input tramite mouse

Per simulare l'input tramite mouse, usare il mouse fisico o il trackpad sul proprio PC Windows e il pulsante di input tramite mouse sulla barra degli strumenti dell'emulatore. Questa funzionalità è utile se l’app permette all'utente di usare un mouse associato al dispositivo Windows 10 per fornire l'input.

Toccare il pulsante di input tramite mouse sulla barra degli strumenti dell'emulatore per abilitare l'input tramite mouse. Gli eventi clic che si verificano nel riquadro dell'emulatore ora vengono inviati come eventi mouse al sistema operativo di Windows 10 Mobile in esecuzione nella macchina virtuale dell'emulatore.

Emulator screen with mouse input enabled

Schermata dell'emulatore con l'input tramite mouse abilitato.

The mouse input button on the emulator toolbar

Pulsante di input tramite mouse sulla barra degli strumenti dell'emulatore.

Input tastiera

L'emulatore consente di mappare la tastiera hardware del computer di sviluppo alla tastiera di un dispositivo Windows Phone. Il comportamento dei tasti corrisponde a quello in un dispositivo Windows Phone.

Per impostazione predefinita, la tastiera hardware non è abilitata. Questa implementazione equivale a una tastiera scorrevole che deve essere distribuita per poter essere usata. Prima di abilitare la tastiera hardware, l'emulatore accetta l'input solo dai tasti CTRL.

I caratteri speciali sulla tastiera di una versione localizzata di un computer di sviluppo Windows non sono supportati dall'emulatore. Per immettere caratteri speciali presenti su una tastiera localizzata, usa il pannello di input software.

Per usare la tastiera del computer nell'emulatore, premere F4.

Per smettere di usare la tastiera del computer nell'emulatore, premere F4.

La tabella seguente illustra i tasti di una tastiera hardware che puoi usare per emulare i pulsanti e altri controlli di un dispositivo .

Notare che nella build 10.0.14332 dell'emulatore il mapping dei tasti hardware del computer è cambiato. I valori nella seconda colonna della tabella seguente rappresentano i nuovi tasti.

Tasti hardware computer (emulatore build 10.0.14295 e precedenti) Tasti hardware computer (emulatore build 10.0.14332 e successive) Pulsante hardware di Windows Phone Note
F1 WIN+ESC INDIETRO Le pressioni lunghe funzionano come previsto.
F2 WIN+F2 AVVIA Le pressioni lunghe funzionano come previsto.
F3 WIN+F3 Cerca...
F4 F4 (nessuna modifica) Attivazione e disattivazione della tastiera del computer locale.
F6 WIN+F6 FOTOCAMERA METÀ Pulsante dedicato della fotocamera che viene premuto fino a metà.
F7 WIN+F7 FOTOCAMERA COMPLETO Pulsante dedicato della fotocamera.
F9 WIN+F9 VOLUME SU
F10 WIN+F10 VOLUME GIÙ
F12 WIN+F12 POWER Premi il tasto F12 due volte per abilitare la schermata di blocco. Le pressioni lunghe funzionano come previsto.
ESC WIN+ESC INDIETRO Le pressioni lunghe funzionano come previsto.

Near Field Communications (NFC)

Per compilare e testare app che usano funzionalità abilitate NFC (Near Field Communication) su Windows 10 Mobile, usare la scheda NFC del menu Strumenti aggiuntivi dell’emulatore. NFC è utile in diversi scenari, da quelli di prossimità (ad esempio, Tocca per condividere) a quelli di emulazione di una carta (ad esempio, Tocca per pagare).

Per testare la tua app, puoi simulare una coppia di telefoni collegati usando una coppia di emulatori oppure puoi simulare un tocco su un tag. Anche in Windows 10, i dispositivi mobili sono abilitati con la funzionalità HCE (Host Card Emulation) e, usando l'emulatore del telefono, puoi simulare il collegamento del tuo dispositivo a un terminale di pagamento per il traffico delle risposte ai comandi APDU.

La scheda NFC supporta tre modalità:

  • Modalità prossimità
  • Modalità HCE (Host Card Emulation)
  • Modalità lettore di smart card

In tutte le modalità, la finestra dell'emulatore ha tre aree di interesse.

  • La sezione in alto a sinistra è specifica della modalità selezionata. Le funzionalità di questa sezione dipendono dalla modalità e sono descritte in dettaglio più avanti nelle sezioni specifiche delle modalità.
  • La sezione in alto a destra elenca i registri. Quando colleghi tra loro una coppia di dispositivi (o crei un collegamento al terminale POS), viene registrato l'evento tap e, quando i dispositivi vengono scollegati, viene registrato l'evento untap. Questa sezione registra anche se l’app ha risposto prima che si interrompesse la connessione o qualsiasi altra azione eseguita nell'interfaccia utente dell'emulatore, con i timestamp. I registri sono persistenti anche se si passa da una modalità all’altra, e si possono cancellare in qualsiasi punto toccando il pulsante Cancella sopra la schermata Registri.
  • La metà inferiore della schermata è il registro messaggi che mostra la trascrizione di tutti i messaggi inviati o ricevuti sulla connessione attualmente selezionata, a seconda della modalità selezionata.

Importante Quando si avvia per la prima volta lo strumento per il tocco, si vedrà un prompt di Windows Firewall. È NECESSARIO selezionare TUTTE e 3 le caselle di controllo e consentire allo strumento di comunicare attraverso il firewall, altrimenti lo strumento non funzionerà senza rendersene conto.

Dopo aver lanciato il programma di installazione ad avvio rapido, assicurarsi di selezionare tutte e 3 le caselle di controllo al prompt del firewall, come indicato sopra. Inoltre, lo strumento per il tocco deve essere installato e usato nello stesso computer host fisico dell'emulatore Microsoft.

Modalità prossimità

Per simulare una coppia di telefoni collegati tra loro, sarà necessario lanciare una coppia di emulatori di Windows Phone 8. Poiché Visual Studio non supporta l'esecuzione simultanea di due emulatori identici, come soluzione alternativa sarà necessario selezionare risoluzioni diverse per ogni emulatore.

The NFC Proximity page

Quando si seleziona la casella di controllo Enable discovery of peer devices, la casella a discesa Peer device mostra gli emulatori Microsoft (in esecuzione sullo stesso computer host fisico o nella rete locale) oltre ai computer Windows che eseguono il driver del simulatore (in esecuzione sullo stesso computer o nella rete locale).

Una volta che entrambi gli emulatori sono in esecuzione:

  • Selezionare l’emulatore di destinazione nell’elenco Peer device.
  • Selezionare il pulsante di opzione Send to peer device.
  • Fare clic sul pulsante Tap. Questa azione simulerà il collegamento dei due dispositivi e si dovrebbe sentire il suono di notifica tocco NFC
  • Per disconnettere i 2 dispositivi, toccare semplicemente il pulsante Untap.

In alternativa, abilitare la casella di controllo Automatically untap in (seconds) dove si può specificare per quanti secondi si vuole che i dispositivi restino collegati. Dopo il numero di secondi specificato i dispositivi verranno automaticamente scollegati. Se si sta simulando ciò che farebbe un utente nella realtà, bisogna ricordare che probabilmente terrebbe il telefono collegato a un altro solo per poco tempo. Il registro messaggi non è però attualmente disponibile perché la connessione è stata interrotta.

Per simulare la lettura di messaggi da un tag o la ricezione di messaggi da un altro dispositivo:

  • Selezionare il pulsante di opzione Send to self per testare gli scenari che richiedono un solo dispositivo abilitato NFC.
  • Fare clic sul pulsante Tap. Questa azione simulerà il collegamento di un dispositivo a un tag e si dovrebbe sentire il suono di notifica tocco NFC
  • Per disconnetterlo, toccare semplicemente il pulsante Untap.

Usando la modalità prossimità, si possono inserire i messaggi come se provenissero da un tag o da un altro dispositivo peer. Lo strumento ti consente di inviare messaggi dei tipi seguenti.

  • WindowsURI
  • WindowsMime
  • WritableTag
  • Pairing:Bluetooth
  • NDEF
  • NDEF:MIME
  • NDEF:URI
  • NDEF:wkt.U

Si possono creare questi messaggi modificando le finestre Payload o inserendoli in un file. Per altre informazioni su questi tipi e su come usarli, vedere la sezione Osservazioni della pagina di riferimento per ProximityDevice.PublishBinaryMessage.

Windows Driver Kit (WDK) include un esempio di driver client CX NFC.

Modalità Host Card Emulation (HCE)

Nella modalità Host Card Emulation (HCE) puoi testare la tua applicazione di emulazione di carte basata su HCE scrivendo i tuoi script personalizzati per simulare un lettore di smart card, ad esempio un terminale POS (Point Of Sale). Questo strumento presuppone che si abbia familiarità con le coppie di risposte ai comandi (conformi a ISO-7816-4) inviate tra un lettore (ad esempio un POS, un lettore di carte o un lettore di tessere dei trasporti pubblici) e la smart card (che si sta emulando nell’applicazione).

The NFC HCE page

  • Creare un nuovo script facendo clic sul pulsante Add nella sezione dell’editor di script. È possibile specificare un nome per lo script e, dopo aver completato la modifica, è possibile salvare lo script usando il pulsante Save.
  • Gli script salvati saranno disponibili al successivo avvio dell'emulatore.
  • Eseguire gli script premendo il pulsante Play nella finestra dell'editor di script. Questa azione simula il tocco del telefono al terminale e l'invio dei comandi scritti nello script. In alternativa, è possibile premere il pulsante Tap e poi il pulsante Play. Finché non si preme Play lo script non verrà eseguito.
  • Si può interrompere l'invio dei comandi premendo il pulsante Stop, che interrompe l'invio dei comandi all'applicazione, ma i dispositivi rimangono collegati finché non si preme il pulsante Untap.
  • Eliminare gli script selezionando lo script nel menu a discesa e facendo clic sul pulsante Delete.
  • Lo strumento emulatore non cerca la sintassi degli script finché non si esegue lo script con il pulsante Play. I messaggi inviati dallo script dipendono dall'implementazione dell’app di emulazione di carte.

Per saperne di più sul supporto HCE e su come sviluppare app HCE in Windows 10 Mobile, fare riferimento al blog del team NFC Microsoft.

Come creare script per il testing HCE

Gli script vengono scritti come codice C# e, quando si fa clic sul pulsante Play, viene chiamato il metodo Run dello script. Questo metodo accetta un’interfaccia IScriptProcessor che viene usata per trasmettere e ricevere comandi APDU, visualizzare l’output nella finestra dei registri e controllare il timeout di attesa di una risposta APDU dal telefono.

Sotto si può vedere un riferimento delle funzionalità disponibili:

        public interface IScriptProcessor
        {
            // Sends an APDU command given as a hex-encoded string, and returns the APDU response
            string Send(string s);

            // Sends an APDU command given as a byte array, and returns the APDU response
            byte[] Send(byte[] s);

            // Logs a string to the log window
            void Log(string s);

            // Logs a byte array to the log window
            void Log(byte[] s);

            // Sets the amount of time the Send functions will wait for an APDU response, after which
            // the function will fail
            void SetResponseTimeout(double seconds);
        }

Modalità lettore di smart card

L’emulatore può essere connesso a un lettore di smart card nel computer host, in modo che le smart card inserite o collegate appaiano nell’applicazione per il telefono e possano essere messe in comunicazione con APDU tramite la classe Windows.Devices.SmartCards.SmartCardConnection. Per questo ci sarà bisogno di un lettore di smart card compatibile collegato al computer. Sono disponibili diversi lettori di smart card USB (sia NFC/senza contatto che con inserimento/contatto). Per permettere all’emulatore di funzionare con un lettore di smart card collegato, scegliere prima la modalità Lettore di carte magnetiche per visualizzare una casella a discesa con l’elenco di tutti i lettori di smart card compatibili collegati al sistema host, poi nella casella a discesa scegliere il lettore di smart card che si vuole connettere.

Non tutti i lettori di smart card compatibili con lo standard NFC supportano alcuni tipi di card NFC e alcuni non supportano i comandi APDU delle schede di memoria PC/SC standard.

Input multipunto

Simulare l’input multitocco per eseguire il movimento di avvicinamento delle dita e lo zoom, la rotazione e la panoramica degli oggetti usando il pulsante Input multitocco sulla barra degli strumenti dell’emulatore. Questa funzionalità è utile se l’app visualizza foto, mappe o altri elementi visivi su cui gli utenti possono eseguire il movimento di avvicinamento delle dita per eseguire lo zoom oppure eseguire la rotazione o la panoramica.

  1. Toccare il pulsante Input multitocco sulla barra degli strumenti dell’emulatore per abilitare l’input multipunto. Nella schermata dell'emulatore vengono visualizzati due punti tocco attorno a un punto centrale.
  2. Fare clic con il pulsante destro del mouse e trascinare uno dei punti tocco per posizionarli senza toccare lo schermo.
  3. Fare clic con il pulsante sinistro del mouse e trascinare uno dei punti tocco per simulare l'avvicinamento delle dita e lo zoom, la rotazione o la panoramica.
  4. Toccare il pulsante Single Point Input sulla barra degli strumenti dell’emulatore per tornare all’input normale.

L'input multitocco viene mostrato nello screenshot seguente.

  1. La piccola immagine a sinistra mostra il pulsante Input multitocco sulla barra degli strumenti dell’emulatore.
  2. L’immagine centrale mostra la schermata dell’emulatore dopo che si è toccato il pulsante Input multitocco per visualizzare i punti tocco.
  3. L'immagine a destra mostra la schermata dell'emulatore dopo aver trascinato i punti tocco per eseguire lo zoom dell'immagine.

Multi-point input option on the Emulator toolbar

Accelerometer

Testare le app che tengono traccia del movimento del telefono usando la scheda Accelerometer della finestra Additional Tools dell’emulatore.

È possibile testare il sensore dell'accelerometro con input in tempo reale o un input preregistrato. L'unico tipo di dati registrati disponibile simula lo scuotimento del telefono. Non è possibile registrare o salvare le proprie simulazioni per l'accelerometro.

  1. Selezionare l’orientamento iniziale desiderato nell’elenco a discesa Orientation.

    • Selezionare il tipo di input.

      Per eseguire la simulazione con un input in tempo reale

      Al centro del simulatore dell'accelerometro trascinare il punto colorato per simulare il movimento del dispositivo su un piano 3D.

      Spostando il punto sull'accesso orizzontale, il simulatore ruota da un lato all'altro. Spostando il punto sull'accesso verticale, il simulatore ruota avanti e indietro, ruotando attorno all'asse x. Mentre si trascina il punto, le coordinate X, Y e Z si aggiornano in base ai calcoli di rotazione. Non è possibile spostare il punto all'esterno del cerchio di delimitazione nell'area del touch pad.

      Facoltativamente, fare clic su Reset per ripristinare l'orientamento iniziale.

    • Per eseguire la simulazione con un input registrato

      Nella sezione Recorded Data fare clic sul pulsante Play per avviare la riproduzione dei dati simulati. L’unica opzione disponibile nell’elenco Recorded Data è shake. Il simulatore non si sposta sullo schermo quando riproduce i dati.

Accelerometer page in Additional Tools for the Emulator

Posizione e spostamenti

Testare le app che si basano sull’esplorazione o sui recinti virtuali usando la scheda Location della finestra Additional Tools dell’emulatore. Questa funzionalità è utile per simulare gli spostamenti in auto, in bicicletta o a piedi in condizioni simili a quelle del mondo reale.

È possibile testare la tua app mentre si simula lo spostamento da un luogo all'altro a velocità diverse e con profili di accuratezza differenti. Il simulatore della posizione può essere utile per identificare le variazioni nell'uso delle API di posizione per migliorare l'esperienza utente. Ad esempio, lo strumento permette di comprendere quando ottimizzare i parametri dei recinti virtuali, come le dimensioni o il tempo di attesa, per rilevare correttamente i recinti virtuali in scenari diversi.

La scheda Location supporta tre modalità. In tutte le modalità, quando l’emulatore riceve una nuova posizione, questa diventa disponibile per attivare l’evento PositionChanged o per rispondere a una chiamata di GetGeopositionAsync nell’app in grado di riconoscere la posizione.

  • In modalità Pin inserire delle puntine sulla mappa. Quando si fa clic su Play all points, l’apposito simulatore invia la posizione di ogni puntina all’emulatore una dopo l’altra, in base all’intervallo specificato nella casella di testo Seconds per pin.

  • In modalità Live inserire delle puntine sulla mappa. L'apposito simulatore invia la posizione di ogni puntina all'emulatore non appena le puntine vengono posizionate sulla mappa.

  • In modalità Route inserire delle puntine sulla mappa per indicare i punti percorso e il simulatore della posizione calcola automaticamente un tragitto. Il percorso include puntine invisibili a intervalli di un secondo lungo il percorso. Ad esempio, se si è selezionato il profilo di velocità Walking, che presuppone una velocità di 5 chilometri l’ora, vengono generate puntine invisibili a intervalli di 1,39 metri. Quando si fa clic su Play all points, l’apposito simulatore invia la posizione di ogni puntina all’emulatore una dopo l’altra, in base all’intervallo determinato dal profilo di velocità selezionato nell’elenco a discesa.

In tutte le modalità del simulatore di posizione è possibile eseguire le seguenti operazioni.

  • Cercare una posizione usando la casella Search.

  • Eseguire lo zoom avanti e lo zoom indietro sulla mappa con Zoom in e Zoom out.

  • Salvare il set corrente di punti dati in un file XML e ricaricare successivamente il file per riutilizzare gli stessi punti dati.

  • Usare Toggle pushpin mode on or off e Clear all points.

In modalità Pin e Route è anche possibile eseguire le operazioni seguenti.

  • Salvare un tragitto creato per poterlo usare in seguito.

  • Caricare un tragitto creato in precedenza. È anche possibile caricare i file di tragitto creati in versioni precedenti dello strumento.

  • Modificare un tragitto eliminando puntine (in modalità Pin) o punti percorso (in modalità Route).

Profili di accuratezza

In tutte le modalità del simulatore di posizione è possibile selezionare uno dei profili di accuratezza seguenti nell’elenco a discesa Accuracy profile.

Profilo Descrizione
Pinpoint Presuppone dati di posizione assolutamente perfetti. Questa impostazione non è realistica, ma è utile per testare la logica dell’app.
Urban Presuppone che gli edifici limitino il numero dei satelliti in vista, ma spesso in questi casi è presente un'elevata densità di ripetitori e di punti di accesso Wi-Fi che possono essere usati per determinare il posizionamento.
Suburban Presuppone un posizionamento dei satelliti relativamente buono e una buona densità di ripetitori, mentre la densità dei punti di accesso Wi-Fi non è elevata.
Rural Presuppone un buon posizionamento dei satelliti, ma una bassa densità di ripetitori e quasi nessun punto di accesso Wi-Fi utilizzabile per determinare il posizionamento.

Profili di velocità

In modalità Route è possibile selezionare uno dei profili di velocità seguenti nell’elenco a discesa.

Profilo Velocità all'ora Velocità al secondo Descrizione
Limite di velocità Limite di velocità del tragitto Non applicabile Fare il tragitto con il limite di velocità inserito.
Marcia 5 km l'ora 1,39 m Fare il tragitto a un'andatura a piedi normale di 5 km l'ora.
Biking 25 km l'ora 6,94 m Fare il tragitto a un'andatura in bici normale di 25 km l'ora.
Veloce Fare il tragitto a una velocità superiore al limite inserito.

Modalità Route

La modalità Route prevede le funzionalità e limitazioni seguenti.

  • La modalità route richiede una connessione Internet.

  • Quando è selezionato il profilo di accuratezza Urban, Suburban o Rural, l'apposito simulatore calcola una posizione simulata basata sul satellite, una posizione simulata Wi-Fi e una posizione simulata sulla rete cellulare per ogni puntina. L'app riceve solo una di queste posizioni. I tre set di coordinate per la posizione corrente vengono visualizzati con colori diversi sulla mappa e nell’elenco Current location.

  • L'accuratezza delle puntine lungo il tragitto non è uniforme. Alcune usano l'accuratezza del satellite, altre l'accuratezza Wi-Fi e altre ancora l'accuratezza della rete cellulare.

  • Non è possibile selezionare più di 20 punti percorso per il tragitto.

  • Le posizioni delle puntine visibili e invisibili sulla mappa vengono generate solo una volta quando si seleziona un nuovo profilo di accuratezza. Quando si riproduce il tragitto più di una volta con lo stesso profilo di accuratezza durante la stessa sessione dell'emulatore, vengono riutilizzate le posizioni generate in precedenza.

Nello screenshot seguente viene mostrata la modalità Route. La linea arancione indica il tragitto. Il punto blu indica la posizione precisa dell'auto determinata dal posizionamento basato sul satellite. I punti rosso e verde indicano posizioni meno precise calcolate in base al posizionamento Wi-Fi e sulla rete cellulare e al profilo di accuratezza Suburban. Le tre posizioni calcolate vengono visualizzate anche nell’elenco Current location.

Location page in Additional Tools for the Emulator

Altre info sul simulatore di posizione

  • È possibile richiedere una posizione con l'accuratezza impostata su Predefinito.

  • Quando si testa l'uso dei recinti virtuali nell'emulatore, creare una simulazione che lasci all'apposito motore il tempo necessario per comprendere gli schemi di movimento e adattarsi a essi.

  • Le uniche proprietà di posizione che vengono simulate sono Latitude, Longitude, Accuracy e PositionSource. Il simulatore di posizione non simula altre proprietà come Speed, Heading e così via.

Network

Testare l’app con velocità di rete e potenze di segnale diverse usando la scheda Network della finestra Additional Tools dell’emulatore. Questa funzionalità è utile se l'app chiama servizi Web o trasferisce dati.

La funzionalità di simulazione della rete permette di verificare se l'app viene eseguita correttamente nel mondo reale. L'emulatore di Windows Phone viene eseguito in un computer che in genere ha una connessione Ethernet o Wi-Fi veloce. L’app invece viene eseguita su telefoni che in genere sono connessi a una rete cellulare più lenta.

  1. Selezionare Enable network simulation per testare l’app con velocità di rete e potenze di segnale diverse.

  2. Nell’elenco a discesa Network speed selezionare una delle opzioni seguenti:

    • Nessuna rete
    • 2G
    • 3G
    • 4G
  3. Nell’elenco a discesa Signal strength selezionare una delle opzioni seguenti:

    • Bene
    • Media
    • Scarso
  4. Deselezionare Enable network simulation per ripristinare il comportamento predefinito, ossia l’uso delle impostazioni di rete del computer di sviluppo.

Nella scheda Network è anche possibile controllare le impostazioni di rete correnti.

Network page in Additional Tools for the Emulator

Scheda SD

Testare la tua app con una scheda SD rimovibile simulata usando la scheda SD Card della finestra Additional Tools dell’emulatore. Questa funzionalità è utile se l'app legge o scrive file.

SD Card page in Additional Tools for the Emulator

La scheda SD Card usa una cartella del computer di sviluppo per simulare una scheda SD rimovibile presente nel telefono.

  1. Selezionare una cartella.

    Fare clic su Browse per selezionare una cartella del computer di sviluppo in cui archiviare il contenuto della scheda SD simulata.

  2. Insert the SD card.

    Dopo avere selezionato una cartella, fare clic su Insert SD card. Quando si inserisce la scheda SD, vengono eseguite le operazioni seguenti:

    • Se non è stata specificata una cartella o la cartella non è valida, si verifica un errore.
    • I file presenti nella cartella specificata del computer di sviluppo vengono copiati nella cartella radice della scheda SD simulata nell'emulatore. Una barra di stato indica l'avanzamento dell'operazione di sincronizzazione.
    • Il pulsante Insert the SD card viene sostituito dal pulsante Eject SD card.
    • Se si fa clic su Eject SD card mentre è in corso la sincronizzazione, l’operazione viene annullata.
  3. Facoltativamente, selezionare o deselezionare Sync updated files back to the local folder when I eject the SD card (Sincronizzare i file aggiornati nella cartella locale quando si espelle la scheda SD).

    Per impostazione predefinita, questa opzione è attivata. Se questa opzione è abilitata, quando si espelle la scheda SD i file vengono sincronizzati dall'emulatore alla cartella del computer di sviluppo.

  4. Eject the SD card (espellere la scheda SD).

    Fare clic su Eject SD card. Quando si espelle la scheda SD, si verifica quanto segue:

    • Se è stato selezionato Sync updated files back to the local folder when I eject the SD card (Sincronizzare i file aggiornati nella cartella locale quando si espelle la scheda SD):
      • I file presenti sulla scheda SD simulata nell'emulatore vengono copiati nella cartella specificata del computer di sviluppo. Una barra di stato indica l'avanzamento dell'operazione di sincronizzazione.
      • Il pulsante Eject SD card viene sostituito dal pulsante Cancel sync.
      • Se si fa clic su Cancel sync mentre è in corso la sincronizzazione, la scheda viene espulsa e i risultati dell’operazione di sincronizzazione sono incompleti.
    • Il pulsante Eject SD card viene sostituito dal pulsante Insert SD card.

Nota Una scheda SD usata dal telefono è formattata con il file system FAT32, pertanto la dimensione massima è 32 GB.

La velocità di lettura e di scrittura nella scheda SD simulata è limitata per imitare le velocità riscontrate nel modo reale. L'accesso a una scheda SD è più lento dell'accesso all'unità disco rigido del computer.

Notifications

Inviare notifiche push all’app usando la scheda Notifications della finestra Additional Tools dell’emulatore. Questa funzionalità è utile se l'app riceve notifiche push.

È possibile testare facilmente le notifiche push senza dover creare il servizio cloud necessario dopo la pubblicazione dell'app.

  1. Abilita la simulazione.

    Dopo aver selezionato Enabled, tutte le app distribuite nell’emulatore useranno il motore di simulazione anziché il servizio MPN o WNS finché non si disabilita la simulazione.

  2. Seleziona l'app che deve ricevere le notifiche.

    Nell’elenco AppId vengono inserite automaticamente tutte le app distribuite nell’emulatore che sono abilitate per le notifiche push. Selezionare un'app nell'elenco a discesa.

    Se si distribuisce un'altra app abilitata per il push dopo aver abilitato la simulazione, fare clic su Refresh per aggiungere l'app all'elenco.

  3. Seleziona un canale di notifica.

    Dopo la selezione di un’app nell’elenco AppId, nell’elenco URI vengono inseriti automaticamente tutti i canali di notifica registrati per l’app selezionata. Selezionare un canale di notifica nell'elenco a discesa.

  4. Seleziona un tipo di notifica.

    Dopo la selezione di un canale di notifica nell’elenco URI, nell’elenco Notification Type vengono inseriti automaticamente tutti i tipi disponibili per il servizio di notifica. Selezionare un tipo di notifica nell'elenco a discesa.

    Il simulatore usa il formato URI del canale di notifica per determinare se l'app si avvale di notifiche push MPN o WNS.

    La simulazione supporta tutti i tipi di notifica. Il tipo predefinito è Tile.

    • Sono supportati i tipi di notifica WNS seguenti:

      • Raw

      • Toast

        Quando l’app usa le notifiche WNS e si seleziona il tipo di notifica Toast, nella scheda di simulazione vengono visualizzati i campi Tag e Group. È possibil selezionare queste opzioni e immettere dei valori nei campi Tag e Group per gestire le notifiche di tipo avviso popup nel centro notifiche.

      • Riquadro

      • Badge

    • Sono supportati i tipi di notifica MPN seguenti:

      • Raw
      • Toast
      • Riquadro
  5. Seleziona un modello di notifica.

    Dopo la selezione di un tipo di notifica nell’elenco Notification Type, nell’elenco Templates vengono inseriti automaticamente tutti i modelli disponibili per il tipo di notifica. Selezionare un modello nell'elenco a discesa.

    La simulazione supporta tutti i tipi di modello.

  6. Se vuoi, cambia il payload della notifica.

    Dopo la selezione di un modello nell’elenco Templates, nella casella di testo Notification Payload viene inserito automaticamente un payload di esempio per il modello. Esaminare il payload di esempio nella casella di testo Notification Payload.

    • È possibile inviare il payload di esempio senza modificarlo.

    • È possibile modificare il payload di esempio nella casella di testo.

    • È possibile fare clic su Load per caricare un payload da un file di testo o XML.

    • È possibile fare clic su Save per salvare il testo XML del payload per riutilizzarlo in seguito.

    Il simulatore non convalida questo testo.

  7. Invia la notifica push.

    Fare clic su Send per inviare la notifica push all’app selezionata.

    Nella schermata viene visualizzato un messaggio per indicare l'esito positivo o negativo dell'operazione.

Notifications page in Additional Tools for the Emulator

Sensors

Testare il funzionamento dell’app sui telefoni a basso costo che non dispongono di tutte le funzionalità della fotocamera o di tutti i sensori facoltativi usando la scheda Sensors della finestra Additional Tools dell’emulatore. Questa funzionalità è utile se l'app usa la fotocamera o alcuni sensori del telefono e si desidera che sia pronta per il più vasto mercato possibile.

  • Per impostazione predefinita, sono abilitati tutti i sensori presenti nell’elenco Optional sensors. Selezionare o deselezionare le singole caselle di controllo per abilitare o disabilitare i sensori corrispondenti.
  • Dopo avere modificato le selezioni, fare clic su Apply. Quindi, riavviare l'emulatore.
  • Se si apportano modifiche e quindi si cambia scheda oppure si chiude la finestra Additional Tools senza fare clic su Apply, le modifiche vengono annullate.
  • Le impostazioni effettuate vengono mantenute durante la sessione dell'emulatore finché non si modificano o non si ripristinano le impostazioni originali. Se si acquisisce un checkpoint, le impostazioni vengono salvate con esso. Le impostazioni vengono mantenute solo per l'emulatore specifico in uso.

Sensors page in Additional Tools for the Emulator

Opzioni relative ai sensori

È possibile abilitare o disabilitare i seguenti sensori hardware facoltativi:

  • Sensore di luce ambientale
  • Fotocamera anteriore
  • Giroscopio
  • Bussola (magnetometro)
  • NFC
  • Pulsanti software (solo in alcune immagini di emulatore ad alta risoluzione)

Opzioni relative alla fotocamera

È possibile abilitare o disabilitare la fotocamera anteriore facoltativa selezionando o deselezionando la relativa casella di controllo nell’elenco Optional sensors.

È anche possibile selezionare un profilo fotocamera nell'elenco a discesa Camera (fotocamera).

Contatori di frequenza dei fotogrammi

Usare i contatori di frequenza dei fotogrammi disponibili nell'emulatore di Windows Phone per monitorare le prestazioni dell’app in esecuzione.

Frame rate counters in Windows Phone emulator

Descrizioni dei contatori di frequenza dei fotogrammi

La tabella seguente descrive i singoli contatori di frequenza dei fotogrammi.

Contatore di frequenza dei fotogrammi Descrizione
Frequenza dei fotogrammi thread di composizione (rendering) (fotogrammi al secondo) La frequenza di aggiornamento dello schermo.
Frequenza dei fotogrammi thread dell'interfaccia utente (fotogrammi al secondo) La velocità di esecuzione del thread dell'interfaccia utente.
Uso della memoria trame Le copie della memoria video e della memoria di sistema delle trame usate nell'app.
Contatore superfici Il numero di superfici esplicite passate alla GPU per l'elaborazione.
Contatore superfici intermedie Il numero di superfici implicite generate come risultato delle superfici memorizzate nella cache.
Contatore frequenza di riempimento schermo Il numero di pixel dipinti per fotogramma in termini di schermate. Il valore 1 rappresenta il numero di pixel nella risoluzione dello schermo corrente, ad esempio 480 x 800 pixel.

Abilitazione e disabilitazione dei contatori di frequenza dei fotogrammi

È possibile abilitare o disabilitare la visualizzazione dei contatori di frequenza dei fotogrammi nel codice. Quando si crea un progetto di app per Windows Phone in Visual Studio, nel file App.xaml.cs viene aggiunto per impostazione predefinita il codice mostrato di seguito, che abilita tali contatori. Per disabilitarli, impostare EnableFrameRateCounter su false o impostare come commento la riga di codice.

// Show graphics profiling information while debugging.
if (System.Diagnostics.Debugger.IsAttached)
{
   // Display the current frame rate counters.
   Application.Current.Host.Settings.EnableFrameRateCounter = true;
   
   // other code…
}
' Show graphics profiling information while debugging.
If System.Diagnostics.Debugger.IsAttached Then

   ' Display the current frame rate counters.
   Application.Current.Host.Settings.EnableFrameRateCounter = True

   ' other code...
End If

Problemi noti

Di seguito sono descritti alcuni problemi noti con l'emulatore, con suggerimenti per la risoluzione.

Messaggio di errore: “Errore durante la rimozione del commutatore Ethernet virtuale”

In determinate situazioni, ad esempio dopo l'aggiornamento a una nuova versione di anteprima di Windows 10, un commutatore di rete virtuale associato all'emulatore può passare a uno stato in cui non può essere eliminato tramite l'interfaccia utente.

Per risolvere questa situazione, eseguire "netcfg -d" da un prompt dei comandi con diritti di amministratore: C:\Program Files (x86)\Microsoft XDE\<version>\XdeCleanup.exe. Al termine dell'esecuzione del comando, riavviare il computer per completare il processo di ripristino.

Nota Questo comando eliminerà tutti i dispositivi di rete e non solo quelli associati all'emulatore. Al riavvio del computer, tutti i dispositivi di rete hardware verranno rilevati automaticamente.  

Impossibile avviare gli emulatori

L'emulatore Microsoft include XDECleanup.exe, uno strumento che elimina tutte le macchine virtuali, i dischi differenze e i commutatori di rete specifici dell'emulatore, fornito con i file binari (XDE) dell'emulatore. È consigliabile usare questo strumento per la pulizia delle VM dell'emulatore, nel caso in cui si trovino in uno stato non valido. Esegui lo strumento da un prompt dei comandi come amministratore:C:\Program Files (x86)\Microsoft XDE\<version>\XdeCleanup.exe

Nota XDECleanup.exe elimina tutte le macchine virtuali Hyper-V specifiche dell'emulatore, oltre a eventuali checkpoint o stati salvati delle macchine virtuali.

Disinstallare un'immagine di Windows 10 per dispositivi mobili

Quando si installa l’emulatore, viene installata un’immagine VHD di Windows 10 per dispositivi mobili, per la quale viene creata una voce specifica nell’elenco Programmi e funzionalità nel Pannello di controllo. Se vuoi disinstallare l'immagine, cerca Windows 10 for Mobile Image -<versione> nell'elenco dei programmi installati, fai clic con il pulsante destro del mouse e scegli Disinstalla.

Nella versione corrente, è quindi necessario eliminare manualmente il file VHD per l'emulatore. Se nel percorso predefinito è stato installato l'emulatore, il file VHD si trova in C:\Program Files (x86)\Windows Kits\10\Emulation\Mobile\<version>\flash.vhd.

Come disabilitare la grafica con accelerazione grafica

Per impostazione predefinita, l'emulatore di Windows 10 Mobile usa grafica con accelerazione hardware. Se non si riesce ad avviare l'emulatore con l'accelerazione hardware abilitata, è possibile disattivarla impostando un valore del Registro di sistema.

Per disabilitare l'accelerazione hardware:

  1. Avviare l'editor del Registro di sistema.
  2. Creare la sottochiave del Registro di sistema seguente, se non esiste: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Xde\10.0
  3. Fai clic con il pulsante destro del mouse sulla cartella 10.0, scegliere Nuovo e quindi fare clic su Valore DWORD.
  4. Digitare DisableRemoteFx e quindi premere INVIO.
  5. Fare doppio clic su DisableRemoteFx, immettere 1 nella casella dati Value, selezionare l’opzione Decimal e quindi fare clic su OK.
  6. Chiudere l'editor del Registro di sistema.

Nota: Dopo aver impostato questo valore del Registro di sistema, è necessario eliminare la macchina virtuale nella console di gestione di Hyper-V per la configurazione avviata in Visual Studio e quindi riavviare l'emulatore con grafica sottoposta a rendering software.

Risorse di supporto

Per trovare risposte e risolvere problemi quando si iniziano a usare gli strumenti di Windows 10, visitare il forum sugli strumenti di Windows 10. Per conoscere tutti i forum sullo sviluppo con Windows 10, fare clic su questo collegamento.