AskClean

पुराना Xcode iOS DeviceSupport सुरक्षित रूप से कैसे हटाएँ

AskClean टीम · अपडेट: 2026-11-02

जिन OS वर्शन पर अब आप डीबग नहीं करते, उनके DeviceSupport फ़ोल्डर हटाए जा सकते हैं, लेकिन अपने मौजूदा असली डिवाइसों में चल रहे वर्शन रखें। मेल खाता डिवाइस दोबारा जोड़ने पर Xcode सपोर्ट डेटा फिर से तैयार कर सकता है, इसलिए डिलीट करने पर आप अभी जगह पाते हैं और बदले में बाद में थोड़ा इंतज़ार करते हैं — सोर्स कोड नहीं खोते।

डेवलपर का लैपटॉप और केबल से जुड़ा फ़ोन; एक ओर सुरक्षित रखे मौजूदा डिवाइस सिंबल, दूसरी ओर जाँच के बाद हटाए जाने वाले पुराने सिंबल ब्लॉक
जिन असली डिवाइस पर आप अभी टेस्ट करते हैं, उनका सपोर्ट रखें; पुराने OS वर्शन के फ़ोल्डर अलग से जाँचें।

DeviceSupport में क्या रहता है

असली iPhone, iPad, Apple Watch या Mac पर डीबग करने के लिए Xcode को उस डिवाइस के OS बिल्ड का सपोर्ट डेटा चाहिए। यह ~/Library/Developer/Xcode/iOS DeviceSupport (और macOS DeviceSupport जैसी मिलती-जुलती डायरेक्टरी) में वर्शन के हिसाब से बने फ़ोल्डरों में रहता है, और अलग-अलग OS वर्शन वाले डिवाइस जोड़ने पर बढ़ता जाता है। ये फ़ाइलें डीबगर को सिस्टम फ़्रेमवर्क और सिंबल समझने में मदद करती हैं; ये न आपका सोर्स कोड हैं, न सिम्युलेटर डिवाइस, न डिस्ट्रिब्यूट किए गए ऐप का dSYM — और न ही iPhone की फ़ोटो या बैकअप।

फ़ोल्डरों को असली डिवाइस से मिलाएँ

Xcode बंद करें और डिवाइस अलग करें। Finder में Command-Shift-G दबाकर ~/Library/Developer/Xcode खोलें और हर DeviceSupport फ़ोल्डर का आकार देखें, या टर्मिनल में du -sh ~/Library/Developer/Xcode/*DeviceSupport* चलाएँ — यह सिर्फ़ मापता है। फिर हर डिवाइस का सिस्टम वर्शन उसकी “सेटिंग” > “सामान्य” > “परिचय” में या Xcode के Window > Devices and Simulators में देखें। जिन डिवाइस पर आप अभी डीबग करते हैं, उनके वर्शन और बिल्ड से मेल खाते फ़ोल्डर रखें; मिलते-जुलते नाम अलग-अलग बिल्ड के भी हो सकते हैं।

  1. Xcode और Simulator बंद करें, फिर टेस्ट वाले असली डिवाइस अलग करें।
  2. Finder में ~/Library/Developer/Xcode खोलें और हर DeviceSupport फ़ोल्डर का आकार मापें।
  3. जिन असली डिवाइस पर आपको डीबग करना है, उन सब पर अभी इंस्टॉल OS वर्शन की सूची बनाएँ।
  4. मेल खाते वर्शन रखें, साथ ही वे बीटा या कम्पैटिबिलिटी वर्शन भी जिनकी आपकी टीम को जल्द ज़रूरत होगी।
  5. सिर्फ़ उन पुराने वर्शन फ़ोल्डरों को रद्दी में डालें जिनसे कोई डिवाइस मेल नहीं खाता, और जब तक अगली बार डिवाइस पर डीबगिंग ठीक से न चल जाए, रद्दी ख़ाली न करें।

DeviceSupport को Xcode Archives न समझें: डिवाइस सिंबल अक्सर फिर से तैयार हो जाते हैं, पर रिलीज़ के dSYM का हूबहू विकल्प शायद कभी न मिले। किसी आर्काइव को सिर्फ़ इसलिए डिलीट न करें कि उसका वर्शन नंबर किसी पुराने DeviceSupport फ़ोल्डर जैसा दिखता है।

सिर्फ़ पुराने वर्शन हटाएँ

Xcode और Simulator बंद रहते हुए किसी एक पक्के तौर पर पुराने वर्शन का फ़ोल्डर रद्दी में डालें — पूरी iOS DeviceSupport डायरेक्टरी नहीं। बाद में उस वर्शन वाला डिवाइस जोड़ने पर Xcode “Preparing debugger support” दिखाकर सपोर्ट डेटा फिर से कॉपी या तैयार करता है; Apple ने यह व्यवहार Xcode के एक रिलीज़ नोट में वर्कअराउंड के तौर पर बताया था, सभी मौजूदा फ़ोल्डर मिटाने की सलाह के तौर पर नहीं। जिस पुराने OS बिल्ड वाला डिवाइस अब आप दोबारा नहीं जोड़ सकते, उसका फ़ोल्डर पहले किसी बैकअप वाली बाहरी डिस्क पर ले जाना ज़्यादा सुरक्षित है, ताकि ज़रूरत पड़ने पर उसे उसी जगह वापस रखा जा सके।

रिकवरी की कीमत पहले से समझें

सपोर्ट डेटा दोबारा तैयार होने में समय लगता है, इसके लिए वही डिवाइस और संगत टूल चाहिए, और डेडलाइन के बीच यह डीबगिंग रोक सकता है; बहुत पुराना Xcode, अभी तक सपोर्ट न होने वाला OS या कोई ग़ायब कंपोनेंट हो, तो यह विफल भी हो सकता है। इसलिए फ़ोल्डर को शून्य तक न घटाएँ: मौजूदा टेस्ट डिवाइसों के वर्शन और बिना नेटवर्क के काम के लिए ज़रूरी सपोर्ट रखें। DeviceSupport हटाने से सिम्युलेटर रनटाइम नहीं हटते — वे Xcode की Settings > Components (Xcode 14–15 में Platforms) में मैनेज होते हैं। AskClean iOS और macOS DeviceSupport के हर वर्शन को अलग आइटम के रूप में दिखाता है: हर डिवाइस मॉडल का सबसे नया वर्शन अनचेक रहता है और पुराने वर्शन आपकी समीक्षा के लिए पहले से चुने रहते हैं; आपकी पुष्टि के बिना कुछ डिलीट नहीं होता, और पुष्टि किए गए आइटम रद्दी में न जाकर स्थायी रूप से डिलीट होते हैं।

फ़ैसलों और जोखिमों की तुलना

Xcode DeviceSupport में क्या रहता है, कौन-से iOS वर्शन हटाए जा सकते हैं, और डिवाइस सिंबल को सिम्युलेटर रनटाइम या ऐप के dSYM से अलग कैसे पहचानें।

फ़ैसलाकहाँ जाँचेंसुरक्षा सीमा
DeviceSupport में क्या रहता है~/Library/Developer/Xcode/iOS DeviceSupportअसली iPhone, iPad, Apple Watch या Mac पर डीबग करने के लिए Xcode को उस डिवाइस के OS बिल्ड का सपोर्ट डेटा चाहिए।
फ़ोल्डरों को असली डिवाइस से मिलाएँWindow > Devices and SimulatorsXcode बंद करें और डिवाइस अलग करें।
सिर्फ़ पुराने वर्शन हटाएँरद्दी / डिवाइस दोबारा जोड़कर जाँचXcode और Simulator बंद रहते हुए किसी एक पक्के तौर पर पुराने वर्शन का फ़ोल्डर रद्दी में डालें — पूरी iOS DeviceSupport डायरेक्टरी नहीं।
रिकवरी की कीमत पहले से समझेंXcode / डिवाइस / नेटवर्कसपोर्ट डेटा दोबारा तैयार होने में समय लगता है, इसके लिए वही डिवाइस और संगत टूल चाहिए, और डेडलाइन के बीच यह डीबगिंग रोक सकता है; बहुत पुराना Xcode, अभी तक सपोर्ट न होने वाला OS या कोई ग़ायब कंपोनेंट हो, तो यह विफल भी हो सकता है।

FAQ

क्या iOS DeviceSupport डिलीट करना सुरक्षित है?

जिन OS वर्शन पर अब आप डीबग नहीं करते, उनके फ़ोल्डर आम तौर पर हटाए जा सकते हैं। मौजूदा असली डिवाइसों में चल रहे वर्शन रखें। हटाया गया वर्शन बाद में चाहिए हो, तो वह डिवाइस दोबारा जोड़ने पर Xcode को सपोर्ट डेटा फिर से तैयार या कॉपी करना पड़ेगा।

क्या इससे iPhone का डेटा, ऐप का dSYM या सिम्युलेटर हटते हैं?

नहीं। DeviceSupport सिर्फ़ Mac पर असली डिवाइसों की डीबगिंग का लोकल सपोर्ट है। iPhone की फ़ोटो, ऐप और बैकअप पर इसका असर नहीं पड़ता; डिस्ट्रिब्यूट किए गए बिल्ड का dSYM आर्काइव में रहता है, और सिम्युलेटर रनटाइम Xcode की Settings > Components और simctl से अलग मैनेज होते हैं।

Xcode ने यह फ़ोल्डर फिर से क्यों बना दिया?

जुड़े हुए असली डिवाइस के OS बिल्ड के लिए Xcode को सपोर्ट डेटा चाहिए। वह न मिले, तो Xcode उसे फिर से तैयार या कॉपी कर लेता है, इसलिए जब तक आप उन्हीं वर्शन पर डीबग करते रहेंगे, यह जगह फिर भरती रहेगी।

स्रोत

डेवलपर स्टोरेज से जुड़ी और गाइड