AskCleanAskClean

Xcode の iOS DeviceSupport は削除できる?安全な整理方法

AskClean チーム · 更新日 2026-07-31

もう実機デバッグに使わない OS バージョンの DeviceSupport は削除できますが、現在のテスト端末が使うバージョンは残してください。必要になれば Xcode が対応端末の再接続時にサポートを準備し直すため、削除の主なコストは待ち時間であり、ソースコードの損失ではありません。

開発用 Mac とスマートフォンの周囲に並ぶ現行および旧版のデバイスデバッグシンボル
現在の実機テスト構成に必要なサポートを残し、使わない OS バージョンだけを個別に確認します。

DeviceSupport に入っているもの

Xcode が実機の iPhone、iPad、Apple Watch、Mac にデバッガを接続するとき、端末の OS ビルドに対応するサポートデータが必要です。複数世代の Xcode と端末を使った Mac には、~/Library/Developer/Xcode/iOS DeviceSupport や macOS DeviceSupport が残ることがあります。

これらは実機の OS フレームワークとシンボルを理解するためのデータです。アプリのソースコード、シミュレータデバイス、配布アプリに対応する dSYM ではありません。削除コストが異なるため、同じ「Xcode の大きなフォルダ」としてまとめないことが重要です。

異なる OS バージョンやビルドの端末を接続するたび、対応データが追加されます。何度かリリースサイクルを経ると、現在の端末ラボでは使っていない古いバージョンが残ります。

フォルダを見つけて保持リストを作る

確認前に Xcode を終了し、実機を外します。Finder で Command + Shift + G を押し、~/Library/Developer/Xcode を開いて、iOS DeviceSupport と macOS DeviceSupport の有無を確認します。実際の構成は利用したプラットフォーム、Xcode、端末によって異なります。

リスト表示でサイズを計算します。ターミナルなら du -sh ~/Library/Developer/Xcode/*DeviceSupport* で読み取り専用の概要を取得できます。一致するフォルダがなければ、シェルがエラーを出しても、そのディレクトリがないだけです。

次に、今後もデバッグする実機の OS バージョンを一覧にします。端末の「設定 > 一般 > 情報」または Xcode の Window > Devices and Simulators で確認し、現在のテスト構成と一致するサポートフォルダを残します。

  1. Xcode と Simulator を終了し、実機を取り外します。
  2. ~/Library/Developer/Xcode を開き、DeviceSupport フォルダごとのサイズを測ります。
  3. 今後デバッグする全実機と OS バージョンを一覧化します。
  4. 一致するバージョンと、直近で必要なベータ・互換性対象を保持します。
  5. 一致しない旧版だけをゴミ箱へ移し、実機デバッグの確認が終わるまで空にしません。

削除後に起きること

削除したバージョンの端末を再接続すると、Xcode が必要なサポートを復元または取得する間、準備中の表示が出る場合があります。Apple は過去の Xcode リリースノートでも、iOS DeviceSupport を削除した後、端末をつなぎ直すとシンボルが再コピーされる手順を案内しています。

再準備できるからといって、常に全消去してよいわけではありません。端末と互換ツールチェーンが必要で、作業にも時間がかかります。締め切り直前のデバッグを止めないため、現在使うバージョンは残してください。

再接続できない古い OS ビルドでは、将来のレガシー調査の可能性と容量を比較します。慎重に進めるなら、まずバックアップ済みの外部ストレージへ移し、必要になったとき元の場所へ戻します。

Apple の削除・再接続手順は特定 Xcode 版の回避策です。再準備可能である根拠にはなりますが、現行フォルダを定期的に全消去する推奨ではありません。

混同しやすい 4 種類の Xcode データ

DeviceSupport は実機デバッグ用です。シミュレータランタイムは Xcode の Settings > Platforms で管理し、仮想端末とアプリデータは CoreSimulator にあります。DeviceSupport を削除してもランタイムはアンインストールされません。

DerivedData はプロジェクトのビルド成果物とインデックスで、ソースから再生成できます。低リスクで容量を取り戻すなら通常はこちらが先です。DeviceSupport も多くの場合は復元できますが、対象端末向けの再準備が必要です。

Archives は高コストです。.xcarchive には配布済みバイナリと対応 dSYM が入るため、似たバージョン名を理由に DeviceSupport と同じキャッシュ扱いをしてはいけません。

本当に DeviceSupport が容量原因か測る

Xcode フォルダが大きくても、DeviceSupport が主因とは限りません。DerivedData、Archives、CoreSimulator、DocumentationCache、DeviceSupport を個別に測ります。小さなシンボルフォルダを消して、大きな未使用ランタイムを残しては効果がありません。

起動ディスクが逼迫しているなら、ゴミ箱、ダウンロード、古い DerivedData、unavailable なシミュレータなど、可逆で再生成可能なデータから作業領域を確保します。その後に DeviceSupport を OS ごとに確認し、Archives は最後にリリース規程で判断します。

削除後も再測定してください。macOS のストレージ分類は更新が遅れることがあります。Finder や du の前後差を使い、一般的な容量予測ではなく、この Mac で旧版フォルダが占めていた実測値を採用します。

AskClean が違いを見えるようにする

AskClean は iOS / macOS DeviceSupport を独立した Xcode 項目として測定し、慎重な確認フローに置きます。DerivedData と混ぜず、Archives を同じコストのキャッシュとも表示しません。

スキャンは DeviceSupport の再準備コストを説明し、ゴミ箱へ移す前に確認します。Archives にはさらに厳しい不可逆警告を表示します。リスクはツールが見せ、現在の実機テスト構成は利用者が決めます。

DeviceSupport は Xcode ストレージの一層

場所と復元コストを分けて、別の成果物を誤って消さないようにします。

カテゴリ一般的な場所削除した結果
実機サポート~/Library/Developer/Xcode/iOS DeviceSupport対応端末の再接続時に Xcode が再準備する場合があります。
シミュレータデータ~/Library/Developer/CoreSimulator端末を削除すると、そのアプリとテストデータも失われます。
DerivedData~/Library/Developer/Xcode/DerivedDataソースから再ビルドと再インデックスされます。
Archives とアプリ dSYM~/Library/Developer/Xcode/Archives配布済みビルドの正確なデバッグ証拠を永久に失う可能性があります。

よくある質問

iOS DeviceSupport は安全に削除できますか?

もうデバッグしない OS バージョンは一般に削除できます。現在の実機が使う版は残してください。後で必要になれば、対応端末の再接続時に Xcode がサポートを準備し直す場合があります。

DeviceSupport にアプリの dSYM は入っていますか?

実機と OS のデバッグを支えるデータで、配布済みアプリ固有の dSYM の代わりにはなりません。正式版のシンボリケートには元の Archive または対応シンボルを保持してください。

DeviceSupport を消すとシミュレータも消えますか?

消えません。ランタイムと仮想端末データは Xcode Platforms、simctl、CoreSimulator で別に管理されます。

削除したフォルダが戻るのはなぜですか?

Xcode が接続した実機の OS ビルドをデバッグするためです。同じ版を再び使えば、必要なサポートが再準備され、容量も戻ります。

参考資料

Xcode ストレージの確認を続ける