AskClean

איך למחוק גרסאות ישנות של iOS DeviceSupport ב-Xcode בבטחה

צוות AskClean · עודכן 2026-11-02

אפשר למחוק תיקיות DeviceSupport של גרסאות מערכת שכבר אינכם מנפים בהן שגיאות, אבל שמרו את הגרסאות של המכשירים הפיזיים שבהם אתם משתמשים כיום. כשמחברים שוב מכשיר תואם, Xcode יכול להכין את התמיכה מחדש — כך שהמחיקה מחליפה מקום בדיסק בהמתנה מאוחרת יותר, לא באובדן קוד מקור. ההכנה מחדש דורשת זמן, את המכשיר עצמו ולעיתים רכיבים או חיבור לרשת.

מחשב נייד וטלפון של מפתח, מוקפים בבלוקים של סמלי ניפוי שגיאות עדכניים ומיושנים
שמרו את התמיכה במכשירים הפיזיים שאתם בודקים בהם כיום, ובדקו בנפרד תיקיות של גרסאות מערכת מיושנות.

מה נשמר ב-DeviceSupport

כש-Xcode מנפה שגיאות ב-iPhone, ב-iPad, ב-Apple Watch או ב-Mac פיזיים, הוא צריך נתוני תמיכה לגרסת המערכת שבמכשיר. הנתונים נשמרים בתיקיות לפי גרסה ב-~/Library/Developer/Xcode/iOS DeviceSupport, ובתיקיות מקבילות כמו macOS DeviceSupport. הם לא תמונות או גיבוי של המכשיר, לא קוד המקור של האפליקציה, לא מכשירי סימולטור ולא קובץ ה-dSYM של אפליקציה שהפצתם — ולכל אחת מהקטגוריות האלה יש מחיר מחיקה אחר.

השוו את התיקיות למכשירים שבשימוש

צאו מ-Xcode, נתקו את המכשירים, ובדקו ב-Finder (בתצוגת רשימה, עם חישוב גודלי תיקיות) כמה מקום תופסת כל תיקיית DeviceSupport. אחר כך רשמו את גרסת המערכת בכל מכשיר פיזי שאתם עדיין מנפים בו שגיאות — בהגדרות > כללי > אודות במכשיר, או ב-Window > Devices and Simulators ב-Xcode. שמרו את התיקיות שתואמות לגרסאות ול-builds האלה, וגם גרסאות בטא קרובות או יעדי תאימות שהצוות צריך. שמות דומים עשויים לייצג builds שונים.

  1. צאו מ-Xcode ומ-Simulator, ונתקו את מכשירי הבדיקה הפיזיים.
  2. פתחו ב-Finder את ~/Library/Developer/Xcode ומדדו כל תיקיית DeviceSupport.
  3. רשמו את גרסאות המערכת שמותקנות בכל מכשיר פיזי שאתם מתכוונים לנפות בו שגיאות.
  4. שמרו את הגרסאות התואמות, וגם כל גרסת בטא קרובה או יעד תאימות שהצוות צריך.
  5. העבירו לפח האשפה רק תיקיות של גרסאות מיושנות שאין להן מכשיר תואם, ואל תרוקנו את הפח עד שבדיקת ניפוי השגיאות הבאה במכשיר תצליח.

אל תבלבלו בין DeviceSupport לבין Xcode Archives: סמלי מכשיר אפשר בדרך כלל להכין מחדש, אבל קובץ dSYM של release עלול להיות חסר תחליף.

הסירו רק גרסאות שיצאו משימוש

כש-Xcode ו-Simulator סגורים, העבירו לפח האשפה תיקיית גרסה אחת שאימתתם — לא את כל תיקיית DeviceSupport. אם תחברו בעתיד מכשיר שהתיקייה שלו נמחקה, Xcode עשוי להציג את ההודעה “Preparing debugger support” בזמן שהוא מכין או מעתיק מחדש את התמיכה הדרושה. לגרסת מערכת ישנה שכבר לא תוכלו לשחזר או לחבר, האפשרות השמרנית היא להעביר את התיקייה קודם לאחסון חיצוני מגובה, ולהחזיר אותה למקומה אם חקירה ישנה תזדקק לה.

תכננו את עלות ההכנה מחדש

ההכנה מחדש דורשת זמן, את המכשיר וכלים תואמים, והיא עלולה להיכשל עם Xcode ישן מדי, עם גרסת מערכת שעדיין לא נתמכת או כשחסרים רכיבים — ולפעמים דווקא כשאתם לחוצים בזמן. לכן שמרו את הגרסאות של מעבדת המכשירים הנוכחית במקום לרוקן את התיקייה עד הסוף, ושמרו את התמיכה הדרושה לפני עבודה בלי רשת. AskClean מציג כל גרסת DeviceSupport בנפרד: את הגרסה החדשה ביותר לכל דגם מכשיר הוא משאיר לא מסומנת, וגרסאות ישנות יותר מסומנות מראש. שום דבר לא נמחק לפני שתאשרו, ומחיקה שאושרה היא לצמיתות ואינה עוברת לפח האשפה.

השוואת החלטות וסיכונים

מה יש בתיקיית DeviceSupport של Xcode, אילו גרסאות iOS אפשר להסיר, ואיך לא להתבלבל בין סמלי מכשירים לבין סביבות הרצה של הסימולטור או קובצי dSYM של אפליקציות.

החלטההיכן לבדוקגבול הבטיחות
מה נשמר ב-DeviceSupport~/Library/Developer/Xcode/iOS DeviceSupportכש-Xcode מנפה שגיאות ב-iPhone, ב-iPad, ב-Apple Watch או ב-Mac פיזיים, הוא צריך נתוני תמיכה לגרסת המערכת שבמכשיר.
השוו את התיקיות למכשירים שבשימושWindow > Devices and Simulatorsצאו מ-Xcode, נתקו את המכשירים, ובדקו ב-Finder (בתצוגת רשימה, עם חישוב גודלי תיקיות) כמה מקום תופסת כל תיקיית DeviceSupport.
הסירו רק גרסאות שיצאו משימושפח האשפה / בדיקה בחיבור מחדשכש-Xcode ו-Simulator סגורים, העבירו לפח האשפה תיקיית גרסה אחת שאימתתם — לא את כל תיקיית DeviceSupport.
תכננו את עלות ההכנה מחדשXcode / מכשיר / רשתההכנה מחדש דורשת זמן, את המכשיר וכלים תואמים, והיא עלולה להיכשל עם Xcode ישן מדי, עם גרסת מערכת שעדיין לא נתמכת או כשחסרים רכיבים — ולפעמים דווקא כשאתם לחוצים בזמן.

שאלות נפוצות

האם בטוח למחוק את iOS DeviceSupport?

בדרך כלל אפשר להסיר תיקיות של גרסאות מערכת שאינכם מנפים בהן שגיאות עוד. שמרו את הגרסאות של המכשירים הפיזיים הנוכחיים. אם תצטרכו גרסה שנמחקה, Xcode יצטרך להכין או להעתיק שוב את התמיכה כשהמכשיר יחובר.

האם DeviceSupport מכיל את ה-dSYM של האפליקציה שלי?

לא. התיקייה משרתת ניפוי שגיאות של מכשירים פיזיים ושל מערכת ההפעלה, והיא לא תחליף ל-dSYM של האפליקציה שנשמר עם build שהופץ. כדי לפענח קריסות בגרסת הייצור, שמרו את ה-archive או את ה-dSYM התואם.

האם מחיקת DeviceSupport מסירה סביבות הרצה של הסימולטור?

לא. סביבות ההרצה ונתוני המכשירים המדומים מנוהלים בנפרד — דרך Xcode Settings > Components (ב-Xcode 14–15: Platforms), דרך simctl ובתיקייה CoreSimulator.

מקורות

מדריכים נוספים על אחסון פיתוח