Durante lo sviluppo di un’applicazione Ionic risulta molto comodo utilizzare il web server integrato in Ionic CLI tramite il comando ionic serve ed utilizzare un browser per testare la nostra applicazione. Evitiamo così il dispendio di tempo necessario per il caricamento e l’esecuzione dell’app in un emulatore o direttamente su un dispositivo, potendo allo stesso tempo visualizzare in modo immediato le modifiche che andiamo man mano apportando alla nostra applicazione.
Tuttavia, l’esecuzione su un browser non è apprezzabile come su di un dispositivo reale. Prendiamo ad esempio la grafica dell’applicazione. Il rendering dell’interfaccia è basato su fogli di stile che dipendono dalla specifica piattaforma mobile su cui viene eseguita l’app.
Quando l’applicazione viene eseguita in un browser viene automaticamente applicato lo stile previsto per iOS. Per visualizzare il look and feel previsto per Android occorre aggiungere il parametro
?ionicplatform=android
all’URL che appare nella barra degli indirizzi. In ogni caso si tratta sempre di un rendering che potrebbe essere leggermente diverso da quello che verrà effettivamente generato sul dispositivo.
Al di là dell’aspetto grafico, che in linea di massima non pone grossi problemi, per il test di funzionalità di interazione con la piattaforma nativa, come ad esempio l’interazione con la fotocamera o con il file system, siamo costretti ad utilizzare un emulatore o meglio ancora un dispositivo fisico.
Per eseguire un’app Ionic su un emulatore Android, dobbiamo avere un ambiente di sviluppo Android installato. Non è necessario avere Android Studio, considerato che non utilizziamo il suo IDE, ma è sufficiente avere installato Android SDK. Per lanciare la nostra app in un emulatore Android apriamo il terminale e scriviamo:
ionic emulate android
Mentre per la generazione di app Android possiamo utilizzare un qualsiasi sistema operativo desktop, per generare ed eseguire un’applicazione iOS abbiamo bisogno di una macchina OS X con installato XCode. Il lancio della nostra app sull’emulatore avviene in seguito all’esecuzione del comando:
ionic emulate ios
In generale, il comando Ionic CLI per lanciare un’app su un dispositivo fisico è
ionic run <nome piattaforma>
Per iOS è necessario, prima di lanciare il comando, installare il pacchetto ios-deploy tramite il seguente comando:
npm install ios-deploy