XcodeのiOS DeviceSupportとは。削除しても安全か
はい、iOS DeviceSupportは削除しても安全です。これらのファイルは、デバイスをはじめて接続したときにXcodeがデバイスからコピーするもので、なくなっていればもう一度コピーされます。
場所
~/Library/Developer/Xcode/iOS DeviceSupportこれは何か
実機のiPhoneやiPadでアプリをデバッグし、そのクラッシュログを読み解くために、Xcodeはそのデバイスで動いているiOSビルドと完全に一致するシステムシンボルを必要とします。あるビルドを実行しているデバイスをはじめて接続すると、Xcodeはそのシンボルを、デバイスのモデルとiOSバージョンが名前になったフォルダにコピーします。
大きくなるのは、接続するすべてのデバイスでiOSをアップデートするたびに新しいフォルダが追加され、古いものが削除されないからです。数年分のアップデートを経ると、フォルダの大半は、もうどのデバイスでも動いていないiOSバージョンのものになります。
隣には、watchOS DeviceSupportやtvOS DeviceSupportなど、ほかのプラットフォーム用の同様のフォルダもあります。
どのくらい大きくなるか
1バージョンあたり数GBが一般的なので、長く使っているMacでは数十GBになることがあります。
手動で消去する方法
- Xcodeを終了します。
- Finderで「移動」>「フォルダへ移動」と選択し、~/Library/Developer/Xcode/iOS DeviceSupport と入力します。
- 各フォルダの名前には、デバイスのモデルとiOSバージョンが示されています。お使いのデバイスでもう動いていないバージョンをゴミ箱に入れ、現在のバージョンはあとで時間を節約できるよう残しておきます。
- すべて消去したい場合は、下記のコマンドでフォルダ内の全バージョンを削除できます。
- Finderを使った場合は、ゴミ箱を空にします。
rm -rf ~/Library/Developer/Xcode/iOS\ DeviceSupport/*削除したあとはどうなるか
フォルダがなくなったデバイスを次に接続すると、そのデバイスで実行できるようになるまで、Xcodeがシンボルのコピーに数分をかけます。削除したiOSバージョンのクラッシュログは、シンボルが戻るまで完全にはシンボル化されないことがあります。
Diskzyでの扱い
「Clean up」(クリーンアップ)タブで、DiskzyはDeviceSupportの最新2バージョンのチェックを外したままにし、それより古いものにチェックを入れます。watchOS、tvOS、visionOSについても同じです。
関連ガイド
- DerivedData~/Library/Developer/Xcode/DerivedData
- Xcode Archives~/Library/Developer/Xcode/Archives
- CoreSimulator Devices~/Library/Developer/CoreSimulator/Devices
Macの空き領域がどこに消えたのかを確認
Diskzyはディスク全体をマップにし、システムデータの内訳を示し、安全なものを消去します。72時間は無料、その後は$9の買い切りでMac 2台まで使えます。
Diskzyを無料で試す