Puis-je supprimer des données d'iOS DeviceSupport?


492

Après avoir parcouru et nettoyé mon disque avec des choses anciennes dont je n'avais plus besoin, je suis tombé sur le dossier iOS DeviceSupport dans ~/User/Library/Developer/Xcodelequel prenait près de 20 Go.

Une question similaire a été posée avant , mais depuis beaucoup de choses ont changé et je voudrais une réponse mise à jour.

Tant que j'ai la version que j'utilise pour les tests, puis-je supprimer les versions plus anciennes / inutilisées sans rien casser?

capture d'écran


1
la même solution a fonctionné pour xCode 8.3.3. Il s'agissait d'anciennes versions iOS prenant de l'espace PAS de vieux simulateurs d'appareils.
rustyMagnet

Réponses:


784

Le ~/Library/Developer/Xcode/iOS DeviceSupportdossier est essentiellement nécessaire uniquement pour symboliser les journaux de plantage.

Vous pouvez purger complètement le dossier entier. Bien sûr, la prochaine fois que vous connecterez l'un de vos appareils, Xcode téléchargera à nouveau les données de symboles de l'appareil.

Je nettoie ce dossier une fois par an environ en supprimant les dossiers pour les versions d'iOS que je ne prends plus en charge ou qui ne devraient jamais avoir à symboliser un journal de plantage.


38
aussi peu que 41 Go de données là-bas, cela n'a pas de sens! C'est donc une bonne idée de supprimer la plupart des versions iOS inutilisées comme expliqué ici! merci
loretoparisi

2
Notez que la documentation est téléchargée uniquement à partir d'un véritable périphérique connecté. Si vous obtenez un rapport d'erreur d'un appareil client avec une version iOS différente de la vôtre, vous ne pourrez pas lire le rapport d'erreur si cette version n'est pas dans «iOS DeviceSupport».
fishinear

9
Ou tout simplement supprimer ~/Library/Developer/Xcode/iOS DeviceSupport/*/Symbols/System/Library/Caches/*- récupère toujours une partie importante du stockage, mais vous avez toujours le support de périphérique hérité là-bas, si vous en avez besoin plus tard.
2017

6
L'une des meilleures réponses sur Stack Overflow - l'a fait et a purgé instantanément 40 Go de stockage
GJZ

Je travaille avec de nombreux iPads; a fait cela et vidé plus de 60 Go.
jeff_mcmahan

392

Réponse plus suggestive soutenant la réponse de rmaddy car notre objectif principal est de supprimer les fichiers et dossiers inutiles:

  1. DeviceSupport - Vous pouvez conserver dans le simulateur les journaux dont vous pourriez avoir besoin à l'avenir. C'est symboliser les journaux de plantage pour différents appareils / iOS.

  2. Supprimez ce dossier après quelques jours d'intervalle. La plupart du temps, il occupe un immense espace!

     ~/Library/Developer/Xcode/DerivedData
  1. Toutes vos cibles sont conservées dans le formulaire archivé dans le dossier Archives. Avant de décider de supprimer le contenu de ce dossier, voici un avertissement - si vous souhaitez pouvoir déboguer les versions déployées de votre application, vous ne devez pas supprimer les archives. Xcode gérera les archives et créera un nouveau fichier lors de l'archivage d'une nouvelle version.

    ~/Library/Developer/Xcode/Archives
  2. Le dossier Prise en charge des appareils iOS crée un sous-dossier avec la version de l'appareil comme identifiant lorsque vous attachez l'appareil. La plupart du temps, ce ne sont que des vieux trucs. Conservez la dernière version et le reste peut être supprimé (si vous n'avez pas d'application qui s'exécute sur 5.1.1, il n'y a aucune raison de conserver le répertoire / les répertoires 5.1.1). Si vous n'en avez vraiment pas besoin, supprimez-le. Mais nous devons en garder quelques-uns bien que nous testions principalement l'application à partir de l'appareil.

    ~/Library/Developer/Xcode/iOS DeviceSupport
  3. Le dossier Core Simulator est familier à de nombreux utilisateurs de Xcode. C'est le territoire du simulateur; c'est là qu'il stocke les données des applications. Il est évident que vous pouvez lancer le ou les dossiers du simulateur de version plus ancienne si vous ne prenez plus en charge vos applications pour ces versions. Comme il s'agit de données utilisateur, pas de gros problème si vous les supprimez complètement, mais il est plus sûr d'utiliser l'option `` Réinitialiser le contenu et les paramètres '' du menu pour supprimer toutes vos données d'application dans un simulateur.

    ~/Library/Developer/CoreSimulator 

(Voici une commande shell à portée de main pour l' étape 5: xcrun simctl delete unavailable)

  1. Les caches peuvent toujours être supprimées en toute sécurité car elles seront recréées si nécessaire. Ce n'est pas un répertoire; c'est un fichier du genre Xcode Project. Supprimer loin!

    ~/Library/Caches/com.apple.dt.Xcode
  2. De plus, l'appareil iOS iOS synchronise automatiquement des fichiers et des paramètres spécifiques sur votre Mac chaque fois qu'ils sont connectés à votre machine Mac. Pour être sûr, il est judicieux d'utiliser le volet Appareils des préférences iTunes pour supprimer les anciennes sauvegardes; vous devez conserver vos sauvegardes les plus récentes hors cours.

    ~/Library/Application Support/MobileSync/Backup

Source : https://ajithrnayak.com/post/95441624221/xcode-users-can-free-up-space-on-your-mac

J'ai récupéré environ 40 Go!


J'utilise Xcode 8.1 et j'ai supprimé le contenu des archives, CoreSimulator, DerivedData, iOS DeviceSupport et Products (car je ne gérais plus aucun de mes produits). J'ai aussi récupéré aprox. 40 Go. MAIS Xcode a commencé à faire un travail CPU excessif sans aucune raison. Je fournirai plus de commentaires au fil du temps.
Andrej

Et je me demandais où allait tout mon espace libre. La suppression de tous ces éléments (en plus de certaines archives dont j'avais réellement besoin) m'a redonné 42 Go d'espace. Merci pour cette réponse!
Lucas P.

1
étant donné qu'une grande partie de cette réponse est copiée à partir du site Web cité, veuillez ajouter l'attribution appropriée: stackoverflow.com/help/referencing
Jean-François Fabre

Déjà quelques attributions ajoutées. Merci pour vos commentaires.
Jamshed Alam

0

Oui, vous pouvez supprimer les données de la prise en charge des appareils iOS par les symboles du système d'exploitation, un pour chaque version pour chaque architecture. Il est utilisé pour le débogage. Si vous n'avez plus besoin de prendre en charge ces appareils, vous pouvez supprimer le répertoire sans effet néfaste

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.