Tutti sappiamo quanto lo smartphone sia diventato importante nella vita di tutti i giorni e spesso mi capita di dover far delle prove per verificare il funzionamento di alcune applicazioni o di alcune funzionalità direttamente sul mio iPhone. Però non sempre è possibile avere un dispositivo iOS con cui fare delle prove o risulta addirittura poco pratico utilizzare un dispositivo fisico o il proprio smartphone personale. Per questo motivo è consigliabile utilizzare un simulatore.

In questa guida vi farò vedere come sia possibile utilizzare Simulatore iOS remoto per Windows utilizzando Visual Studio 2019.

Prerequisiti

La compilazione di applicazioni iOS native richiede l'accesso agli strumenti di compilazione di Apple, che vengono eseguiti solo su Mac. Per questo motivo Visual Studio 2019 deve connettersi a un Mac accessibile dalla rete per compilare le applicazioni Xamarin.iOS.

Prima di seguire le istruzioni riportate in questa guida, è necessario completare i seguenti passaggi:

  • In un computer Windows 10 installare Visual Studio 2019.
  • In un Mac installare Xcode (è necessario aprire manualmente Xcode dopo l'installazione per poter aggiungere componenti aggiuntivi).

Installazione di Visual Studio 2019

Installate Visual Studio 15.8 o versioni successive. Questa versione di Visual Studio offre il supporto IDE per l'esecuzione del simulatore iOS. Io ho scelto di installare Visual Studio Community Edition, che è gratuita per uso personale.

 

 

Figura 1: Installazione di Visual Studio Community 2019

 

Potete scegliere i componenti da installare. Nella parte di Workloads scegliete Mobile development with .NET

 

 

Figura 2: Scelta del workload da installare

 

Al termine dell'installazione vi potrete collegare con un vostro account Microsoft. Se non ne possedete uno lo potrete creare gratuitamente seguendo il link nella schermata di login.

 

 

 

Figura 3: Installazione di Visual Studio Community 2019 completata

 

In Visual Studio 2019 cliccate su Continue without code per proseguire nell'installazione.

 

 

Figura 4: Lancio di Visual Studio Community

 

Installazione di Xcode in Mac

Come già detto è necessario possedere un computer Mac per poter lanciare il simulatore iOS. È anche necessario che sul Mac sia installato Xcode, un ambiente di sviluppo integrato (Integrated development environment, IDE), completamente sviluppato e mantenuto da Apple, contenente una suite di strumenti utili allo sviluppo di software per i sistemi macOS, iOS, watchOS e tvOS. Di recente non è più in bundle con il sistema operativo, ma è possibile scaricarlo gratuitamente dal Mac App Store. Scaricatelo e procedete all'installazione, come mostrato nelle figure sotto:

 

 

Figura 5: Download di Xcode dal Mac App Store

 

 

Figura 6: Installazione di Xcode

 

Terminata l'installazione, lanciate Xcode per completare il download e l'installazione dei componenti aggiuntivi.

 

 

Figura 7: Richiesta di installazione dei componenti aggiuntivi di Xcode

 

 

 

Figura 8: Installazione dei componenti aggiuntivi di Xcode

 

Abilitare l'accesso remoto nel Mac

Per configurare l'host di compilazione Mac, abilitare per prima cosa l'accesso remoto:

  • Nel Mac aprire Preferenze di Sistema e andare al riquadro Condivisione.
  • Selezionare Login remoto nell'elenco Servizio.

Assicurarsi che l'opzione sia configurata in modo da consentire l'accesso a Tutti gli utenti oppure che il nome utente o il gruppo Mac sia incluso nell'elenco di utenti consentiti sulla destra.

Se si trova nella stessa rete del computer Windows, a questo punto il Mac sarà individuabile da Visual Studio 2019, che si connetterà in maniera sicura utilizzando SSH.

 

 

 

Figura 9: Abilitazione dell'accesso remoto nel Mac

 

Connettere Visual Studio 2019 a un host di compilazione Mac

Come già scritto, la compilazione di applicazioni iOS native richiede l'accesso agli strumenti di compilazione di Apple, che vengono eseguiti solo su Mac. Per questo motivo Visual Studio 2019 deve connettersi a un Mac accessibile dalla rete per compilare le applicazioni Xamarin.iOS.

La funzionalità Associa a Mac di Visual Studio 2019 consente di trovare, connettersi, eseguire l'autenticazione e memorizzare gli host di compilazione Mac, in modo che gli sviluppatori iOS che lavorano in Windows possano scrivere codice Xamarin.iOS in Visual Studio 2019. Visual Studio 2019 apre una connessione di rete (utilizzando SSH) con un host di compilazione Mac e usa gli strumenti di compilazione su tale macchina per compilare e firmare l'app iOS.

In Visual Studio 2019 aprite un progetto iOS esistente o createne uno nuovo scegliendo File > Nuovo > Progetto e quindi selezionando un modello di progetto iOS. Da Strumenti > iOS > scegliete la voce Associa a Mac.

 

 

 

Figura 10: Connettersi al Mac da Visual Studio 2019

Nella finestra che si aprirà verranno indicati i passaggi necessari ad associare Visual Studio 2019 con il Mac. Il tool vi ricorderà di abilitare l'accesso remoto nel Mac

 

 

Figura 11: Abilitazione dell'accesso remoto nel Mac

 

 

Figura 12: Opzione di accesso remoto nel Mac

 

 

Figura 13: Accesso per gli utenti remoti

La finestra di dialogo Associa a Mac visualizza un elenco di tutti gli host di compilazione Mac connessi in precedenza e attualmente disponibili. Selezionate un Mac dall'elenco e fate clic su Connetti.

 

 

Figura 14: Selezione del Mac a cui connettersi

La prima volta che ci si connette a un Mac, viene chiesto di immettere il nome utente e la password per tale computer. Associa a Mac userà queste credenziali per creare una nuova connessione SSH al Mac. Se l'operazione riesce, viene aggiunta una chiave al file authorized_keys nel Mac. L'accesso per le successive connessioni allo stesso Mac sarà automatico.

 

 

Figura 15: Inserimento delle credenziali per la connessione al Mac

 

A partire da Visual Studio 2019 versione 15.6, Associa a Mac esegue automaticamente il provisioning in un computer Mac del software necessario per la compilazione di applicazioni Xamarin.iOS: Mono, Xamarin.iOS (il framework del software, non l'IDE di Visual Studio per Mac) e i vari strumenti relativi a Xcode (ma non l'ambiente Xcode). Eventualmente è anche possibile installare preventivamente sul Mac Visual Studio per Mac, che installa Mono e Xamarin.iOS

 

 

Figura 16: Mono non è installato nel Mac. Associa a Mac scaricherà e installerà l'ultima versione stabile di Mono nel Mac

 

 

Figura 17: Installazione automatica di Mono nel Mac

 

 

Figura 18: Xamarin.iOS non è installato nel Mac. Associa a Mac aggiorna Xamarin.iOS nel Mac in modo che corrisponda alla versione installata nel computer Windows

 

 

Figura 19: Installazione di Xamarin.iOS nel Mac

 

Associa a Mac verificherà inoltre se Xcode sia stato installato e che la relativa licenza sia stata accettata. Anche se Associa a Mac non installa Xcode, richiede infatti che la licenza venga accettata, come illustrato nelle schermate seguenti:

 

 

Figura 20: Verifica dell'installazione di Xcode nel computer Mac e accettazione della licenza

 

 

Figura 21: Associa a Mac installerà o aggiornerà i diversi pacchetti distribuiti con Xcode

 

A questo punto l'associazione all'host di compilazione Mac è stata eseguita correttamente si è pronti per compilare app Xamarin.iOS in Visual Studio 2019

 

 

Figura 22: Associazione del Mac completata

 

Simulatore iOS remoto per Windows

Il simulatore iOS remoto per Windows consente di testare le app in un simulatore iOS visualizzato in Windows insieme a Visual Studio 2019 e viene installato automaticamente come parte di Xamarin.

Per poter testare la propria applicazione iOS con il simulatore iOS remoto per Windows è sufficiente creare un nuovo progetto di tipo iOS App (Xamarin) e scegliere il tipo di dispositivo da utilizzare, come mostrato nelle figure sotto:

 

 

Figura 23: Creazione di un nuovo progetto per iOS App (Xamarin)

 

 

Figura 24: Informazioni sul nuovo progetto

 

 

Figura 25: Configurazione del nuovo progetto

 

Dopo aver effettuato la connessione al Mac con Strumenti > iOS > Associa a Mac oppure utilizzando il pulsante Associa a Mac nella barra degli strumenti iOS, sarà possibile lanciare il simulatore.

 

 

Figura 26: La finestra di dialogo Associa a Mac visualizza un elenco di tutti gli host di compilazione Mac connessi in precedenza e attualmente disponibili

 

In maniera predefinita il simulatore si apre nel Mac. Se volete che appaia in Windows dovete andare in Tools à Options à Xamarin à iOS Settings e selezionare Remote Simulator to Windows

 

 

Figura 27: Configurazione per far avviare il simulatore remoto iOS in Windows

 

A questo punto non vi resta altro da fare che scegliere quale versione di iPhone o iPad volete simulare, scegliendolo dal menu a tendina disponibile nella barra di Visual Studio 2019.

 

 

 

Figura 28: Scelta del tipo di dispositivo da simulare

 

 

Figura 29: Avvio del simulatore iOS per Windows

 

 

Figura 30: Simulatore iOS per Windows in esecuzione

 

Per maggiori informazioni sull'utilizzo del Simulatore iOS remoto per Windows vi rimando alla lettura della guida https://docs.microsoft.com/it-it/xamarin/tools/ios-simulator/

Il simulatore è anche in grado di navigare in Internet, come mostrato nella figura sotto:

 

 

Figura 31: Simulatore iOS remoto per Windows è anche in grado di navigare in Internet

 

Conclusioni

La funzionalità Associa a Mac di Visual Studio 2019 consente di trovare, connettersi, eseguire l'autenticazione e memorizzare gli host di compilazione Mac, in modo che gli sviluppatori iOS che lavorano in Windows possano scrivere codice Xamarin.iOS in Visual Studio 2019. Il simulatore iOS remoto per Windows consente di testare le app in un simulatore iOS visualizzato in Windows insieme a Visual Studio 2019 e viene installato automaticamente come parte di Xamarin.