Eliminare i vecchi runtime del simulatore iOS su Mac
I simulatori iOS di Xcode possono occupare silenziosamente gigabyte di spazio di archiviazione nel tempo. Ecco come recuperare quello spazio.
Lo spazio di Xcode è diviso tra runtime, dispositivi simulati, DerivedData, DeviceSupport e Archives. Sono vicini nel Finder, ma hanno gestione e costi di recupero diversi. Misura prima di eliminare.
Perché i simulatori iOS occupano così tanto spazio
Un runtime è un’immagine di sistema iOS, watchOS, tvOS o visionOS scaricata. Un dispositivo simulato è un dispositivo virtuale che usa uno di questi runtime. Più dispositivi possono condividere la stessa immagine, quindi non sono la stessa cache.
Come eliminare i simulatori inutilizzati tramite Terminale
xcrun simctl delete unavailable elimina solo i record dei dispositivi il cui runtime non è più disponibile.
xcrun simctl delete unavailable
Non disinstalla i runtime. Controlla e rimuovi le immagini scaricate in Xcode > Settings > Components. Non cancellare direttamente le cartelle in /Library/Developer/CoreSimulator o /System/Library/AssetsV2.
Cancellare le cache dei simulatori e i dati delle app
Per azzerare lo stato di test di un dispositivo specifico, avvialo in Simulator e scegli Device > Erase All Content and Settings. Il runtime condiviso rimane, ma app, Portachiavi e database del dispositivo vengono eliminati.
Eliminare manualmente iOS DeviceSupport e DerivedData
DerivedData si può ricreare, ma una pulizia totale costringe tutti i progetti a ricompilarsi e reindicizzarsi. DeviceSupport può servire per dispositivi reali; Archives e dSYM di build distribuite possono servire per analizzare crash futuri. Mole elenca i runtime sostituiti e rimuove la selezione tramite simctl runtime delete. Gestisci dispositivi e archivi in Xcode.
Domande frequenti
L'eliminazione di un simulatore cancellerà il codice del mio progetto?
Il codice sorgente resta intatto, ma le app e lo stato di test del dispositivo virtuale vengono eliminati.
È sicuro eliminare la cartella iOS DeviceSupport?
Non trattare tutto DeviceSupport come una cache. I dati di vecchie versioni possono servire per il debug o la simbolizzazione dei crash.
Mole trova i vecchi simulatori?
Mole elenca i runtime scaricati che sono stati sostituiti e rimuove quelli scelti con simctl. Non cancella a mano le cartelle CoreSimulator.