iOS Simulator è parte integrante di ogni processo di sviluppo iOS. Non possiamo ignorarlo. Il nuovo Simulatore di Xcode 9 porta un sacco di trucchi utili, che potrebbero rendervi ancora più produttivi. Finalmente, Apple ha ricordato di avere Simulatore là fuori! Rispetto ai precedenti modesti aggiornamenti, questo sembra un grande affare. 🙌

Perciò scomponiamo questo ed elenchiamo tutte le caratteristiche che ho trovato nel nuovo simulatore iOS (alcuni trucchi si possono usare anche nei vecchi simulatori).

#1 Usa Simulator in modalità a schermo intero con Xcode

Quando hai uno schermo da 13″ la modalità a schermo intero per Xcode è un vero e proprio salvavita. Sfortunatamente, prima non si poteva usare Simulator con Xcode in modalità a schermo intero. Bene, ora puoi 😎

Modalità a schermo intero con Xcode 9 e iOS Simulator

Questa funzione è abilitata di default a partire da Xcode 9b3. Quindi non c’è nemmeno bisogno di fare qualcosa per farla funzionare.

UPD: Si è scoperto che questa funzione è disabilitata di default per alcune persone, ma non preoccupatevi, potete sempre abilitarla tramite il menu Apple Internal come ho descritto più avanti.

Se vuoi esplorare altre caratteristiche segrete nel nuovo Simulator dovresti abilitare il menu nascosto Apple Internals.

Per farlo devi creare una cartella vuota con nome “AppleInternal” nella directory principale. Basta eseguire questo comando qui sotto e riavviare Simulator:

sudo mkdir /AppleInternal

La nuova voce di menu dovrebbe apparire. ☝️

Nota:
Ho testato questo approccio su Simulator da Xcode 9b3. Se non ce l’hai, scarica l’ultimo Xcode qui.

#2 Apri più simulatori contemporaneamente

Ti ricordi la frustrazione di testare la tua app su diversi simulatori? In precedenza eri costretto ad aprire solo un’istanza del simulatore alla volta. C’erano molti “hack” su come aprire più istanze del simulatore iOS in una vecchia versione di Xcode. Ma finalmente, con Xcode 9 questa caratteristica è disponibile di serie.

#3 Ridimensionare il simulatore proprio come una normale finestra

Prima di Xcode 9 avevamo “Scale options” solo per regolare le dimensioni della finestra del simulatore. Ora Apple ha finalmente reso disponibile il ridimensionamento della finestra del simulatore. È un piccolo dettaglio utile che può aiutarti a organizzare lo spazio di lavoro in modo efficiente se hai più simulatori aperti.

#4 Registra video del simulatore

Nel documento ufficiale “What’s new” per Xcode 9, Apple afferma che ora puoi registrare un video dello schermo del simulatore. Non è completamente vero. Si può fare anche nelle vecchie versioni con simctl. Non ho trovato alcuna prova che tu possa abilitare la registrazione video dall’interfaccia però (eccetto la registrazione dello schermo integrata in iOS 11).

Per ottenere il tuo file video, esegui il seguente comando:

xcrun simctl io booted recordVideo --type=mp4 <PATH TO VIDEO FILE>

booted – significa, che simctl seleziona il simulatore attualmente avviato. Nel caso tu abbia più di un simulatore avviato, simctl seleziona l’istanza attualmente attiva.

#5 Condividi file al simulatore direttamente dal Finder

Ora Simulator ha l’estensione Finder che ti permette di condividere file direttamente dalla finestra del Finder.

Puoi fare qualcosa di simile con i file immagine/video usando il comando simctl sotto:

xcrun simctl addmedia booted <PATH TO MEDIA FILE>

È bello avere queste capacità. Tuttavia, il drag&drop del file nella finestra del simulatore mi sembra molto più veloce.

#6 Aprire gli URL sul simulatore

Anche questo viene con simctl. Così puoi aprire schemi di URL personalizzati anche sui vecchi simulatori.

Esegui il comando qui sotto con qualsiasi URL tu abbia bisogno:

xcrun simctl openurl booted <URL>

Per la lista di tutti gli schemi di URL di Apple controlla la documentazione.

#7 Trova rapidamente la cartella contenitore dell’app

Un altro comando da simctl. È possibile ottenere il contenitore dell’app sul file system con un singolo comando. Hai solo bisogno di conoscere l’identificatore del bundle dell’app ed eseguire il comando sottostante:

xcrun simctl get_app_container booted <APP'S BUNDLE ID>

Oppure puoi renderlo ancora più veloce aprendo la cartella di destinazione nel Finder con il comando open:

open `xcrun simctl get_app_container booted <APP'S BUNDLE ID>` -a Finder

#8 Lancia la tua app nel simulatore con argomenti della linea di comando

Con simctl puoi anche lanciare la tua app dal terminale e passarci alcuni argomenti della linea di comando (puoi anche impostare alcune variabili d’ambiente). Può essere utile se vuoi aggiungere qualche comportamento nascosto di solo debug alla tua applicazione.

I comandi qui sotto ti aiutano in questo:

xcrun simctl launch --console booted <BUNDLE ID> <YOUR ARGUMENTS>

Puoi ottenere questi argomenti da linea di comando da CommandLine.arguments (qui c’è il link alla documentazione).

#9 Ottieni informazioni complete sull’applicazione con Bundle ID

A volte è utile scoprire dove si trova il file della tua applicazione o i dati temporanei nel file system. Se hai bisogno di informazioni più complete di quelle che simctl get_app_container può dare. simctl ha anche questo piccolo strumento chiamato appinfo che ti mostrerà alcune informazioni nel seguente formato:

{
ApplicationType = User;
Bundle = <PATH TO APP FILE>;
BundleContainer = <PATH TO FOLDER WITH APP FILE>;
CFBundleDisplayName = TestiOSApp;
CFBundleExecutable = TestiOSApp;
CFBundleIdentifier = "com.ahmed.app.TestiOSApp";
CFBundleName = TestiOSApp;
CFBundleVersion = 1;
DataContainer = <PATH TO YOUR DATA>;
GroupContainers = {
};
Path = <PATH TO APP FILE>;
SBAppTags = (
);
}

Esegui il comando qui sotto ed esplora l’output:

xcrun simctl appinfo booted <BUNDLE ID>

Un’ultima cosa…

iOS Simulator è uno strumento molto potente che può accelerare molto il tuo processo di sviluppo. Ma solo se si conoscono tutti i piccoli dettagli e trucchi. E ovviamente, come un buon ingegnere, devi conoscere i tuoi strumenti.

Qui a Flawless, iOS Simulator è estremamente importante per noi. Il nostro prodotto è un plugin per iOS Simulator che permette agli ingegneri di ispezionare qualsiasi progetto sopra l’implementazione proprio dentro Simulator. Quindi non posso nemmeno dirvi quanto sono felice di questa nuova release di Xcode 9 e Simulator. Non vedo l’ora della versione pubblica! Così potremo implementare più funzioni utili per mantenere la qualità visiva delle app iOS in buona forma.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.