web-dev-qa-db-fra.com

Xcode - libre pour effacer le dossier des périphériques?

Je supprime certains dossiers et fichiers pour libérer de l'espace sur mon lecteur. Je sais que dans le chemin:

~/Library/Developer/CoreSimulator/Devices/

Il existe des dossiers pour chaque simulateur et chaque version. Ce dossier a environ 11 Go pour moi. Je sais que je pourrais supprimer des simulateurs avec d'anciennes versions que je n'utilise plus. Mais à partir de cet identifiant unique, je ne peux pas savoir lequel est le bon ou pas. Ma question est donc la suivante: puis-je tout supprimer? Ce n'est pas grave si la prochaine fois je ne souhaite pas utiliser mon application dans le simulateur, mais puis-je perdre quelque chose de plus? Anciennes versions du simulateur? Ou autre chose? Merci

42
Libor Zapletal

Le chemin ~/Library/Developer/CoreSimulator/Devices/ est l'endroit où Xcode stocke la plupart des données nécessaires pour vos simulateurs individuels.

La suggestion de Beau Nouvelle de supprimer les versions téléchargées du simulateur ne changerait pas la taille de ces dossiers, car les runtimes sont stockés ailleurs.

Si vous allez au terminal, vous pouvez utiliser l’outil simctl (fourni avec Xcode 6+) pour répertorier tous les dispositifs de simulateur que vous possédez, ainsi que les identifiants vous permettant de déterminer les dossiers à supprimer.

Remarque, vous me verrez constamment utiliser xcrun simctl dans cette réponse. Cela ajoute un peu d'abstraction aux choses en demandant à xcrun de rechercher la version appropriée de simctl pour votre Xcode actuellement choisi. Si votre système n'est pas aussi compliqué que le mien, vous pourrez probablement vous en passer en supprimant la partie "xcrun" et la ligne de commande devrait toujours trouver l'outil simctl.

xcrun simctl list devices

Voici quelques extraits sélectionnés de la sortie que j'ai reçue:

== Appareils ==

- iOS 8.2 -

- iOS 8.4 -

iPhone 6 Plus (23E36868-715A-48C8-ACC3-A735C1C83383) (arrêt)

iPad Air (2928379B-70E3-4C59-B5BA-66187DDD3516) (arrêt)

- iOS 9.1 -

Mon iPhone 4s personnalisé (4F27F577-FFD0-42C1-8680-86BBA7394271) (Fermer)

iPad Retina (85717B35-313A-4161-850E-D99D5C8194A6) (arrêt)

- Non disponible: com.Apple.CoreSimulator.SimRuntime.iOS-9-0 -

iPhone 4s (D24C18BC-268C-4F0B-9CD8-8EFFDE6619E3) (arrêt) (indisponible, profil d'exécution introuvable)

De là, vous pouvez voir que je n'ai pas de simulateur iOS 8.2. J'ai des simulateurs 9.1 et 8.4. J'ai un simulateur 9.0 créé (un reste de mon travail sur Xcode 7.0), mais je n'ai pas le runtime du simulateur 9.0 lui-même. C'est donc un bon candidat pour la suppression, ou un rappel que je devrais télécharger le simulateur 9.0 sous Xcode.

Si vous le souhaitez, vous pouvez utiliser ces identifiants pour identifier le dossier du périphérique en question et le supprimer manuellement (dans ce cas, je supprimerais le dossier "D24C18BC-268C-4F0B-9CD8-8EFFDE6619E3"), mais vous pouvez également utiliser le outil simctl pour le faire.

Utilisation selon la version 7.1.1 de simctl:

xcrun simctl help delete
Usage: simctl delete <device> [... <device n>] | unavailable

Donc, je peux soit supprimer le (s) périphérique (s) individuel (s):

xcrun simctl delete D24C18BC-268C-4F0B-9CD8-8EFFDE6619E3

ou je peux supprimer en bloc tous ceux qui ne sont pas disponibles avec:

xcrun simctl delete unavailable

Il n'est pas non plus nécessaire de vous limiter aux simulateurs indisponibles.

Si vous avez besoin d’aide supplémentaire avec cet outil, il est livré avec une commande d’aide assez simple:

xcrun simctl help

137
Aaron

Parfois, Xcode aime doubler ses simulateurs.

Habituellement, la solution pour moi a toujours été de simplement les supprimer tous… .. Les supprimer est sans danger, car vous pouvez toujours les télécharger plus tard.

Xcode> Préférences> Téléchargements

N'oubliez pas que si vous avez d'anciens simulateurs (iOS 8.0-), vous ne pourrez pas les télécharger à nouveau via Xcode.

1
Beau Nouvelle

dans Xcode 8:

1) Exécutez $ Sudo du -khd 1 dans Terminal pour voir la taille du dossier de chaque dossier;

2) Exécutez $ cd library/developer/coresimulator/devices pour voir le Go stocké pour tous vos simulateurs Xcode;

3) Vous commencerez à voir où se cache une tonne de stockage! Maintenant, il suffit de naviguer vers cet emplacement sur votre Macintosh HD et d’afficher le fichier devices.plist dans chaque dossier de périphérique;

4) Choisissez les dossiers à supprimer et conservez-les en supprimant les versions de simulateurs/iOS que vous avez exécutées dans le passé mais dont vous n'avez plus besoin de tester. Les anciennes versions de SQLite pouvant agir en tant qu’anciennes sauvegardes, ou un autre contenu existe dans ces dossiers, alors tenez-en compte avant de supprimer tout le contenu de ce dossier.

J'ai économisé plus de 50 Go la première fois.

0
whyoz

J'ai eu un problème similaire il y a quelque temps, xcode prenait 47G sur mon lecteur. J'ai essayé de supprimer des dispositifs de simulation qui empêchaient mon xcode de fonctionner (fou). J'ai donc supprimé tout ce qui est lié à xcode et installé frais. C'est juste mon expérience.

0
Karthik