Xcode Simulator:古い不要なデバイスを削除する方法?


209

もともとiOS 5.1のみをサポートしていたXcode 4.3.1 iOS-Simulatorを実行しています。

iOS 4.3でコードをテストする必要があるため、「iOS 4.3デバイスシミュレーターでのXcodeのインストール」で説明されているように、Xcodeの「インストール」機能を使用してコードをインストールしました

テストは終了しましたが、4.3の部分をアンインストールする方法が見つかりません(「iPhone 4.3 Simulator」と「iPad 4.3 Simulator」)。スキームメニューの乱雑さを減らしたいのですが。

AppleのXcode listservの誰も答えを知りませんでした!

編集:Xcode 4.3以降、多くの点が変更されていることに注意してください。すべての回答を読んで、この記事を読む人に提案してください。スティーブ・モーザーのような最新のものはあなたにとってもっと役に立つかもしれません!

編集10/2017:Julio Carrettoni Twitterに投稿されました

iOS開発者の場合は、次のコマンドを実行します
$ xcrun simctl delete unavailable
。Xcodeが使用しなくなった古いシミュレーターを削除します。私にとっては6Gbでした。自分で試したのではありません...

[また、ラスビショップがすでに以下のコメントでこれについて言及しているのを見た...]

回答:


172

Xcodeパッケージ内から4.3 SDKを削除しようとしただけですか?

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs

対応する.dmgファイルも削除してください

〜/ライブラリ/Caches/com.apple.dt.Xcode/Downloads

Xcodeが同じパッケージを再インストールないようにします。


XCode> = 6の場合は、@ praveen-matanamの回答を参照してください


3
あなたは天才です!本当にありがとう!Xcodeで信じられないことはありませんlistservはこれを知っていました。私はいくつかの場所を見ますが、あなたが提案した場所ではありません。
デビッドH

これはxcode 4.5.2では機能しません。コンパイラを再起動するとすぐに、古いレガシーデバイスを再度インストールするように求められます。[キャンセル]はxcodeを終了するため、再度インストールする必要があります。
アレハンドロルエンゴ2013年

そうです、アレハンドロ。Appleは「ライセンスのこと」を変更したようです。そのため、常に有効な開発者アカウントが必要であり、アプリ内のすべてのメジャーアップデートですべての拡張機能を何度もインストールする必要があります。レガシーシステムもほとんどサポートされていません;(
childno͡.de

1
Xcode 4.6で動作するものについては、以下のDan Reeseの回答を参照してください。
BJホーマー

2
この答えとともに、Xcode 6.3.1で動作しました。stackoverflow.com/a/30206853/286618。古いドキュメントをクリアし、9GBを保存しました!!!
RoLYroLL、2015年

203

Xcode 6以降では、[メニュー]> [ウィンドウ]> [デバイス]> [シミュレータ]に移動して、不要なシミュレータを削除できます。


1
質問はバージョン4とおそらく5に関連していました。ご覧のとおり、それは非常に困難でした。それ以来、私は古いシミュレーターの使用を避けました。
デビッドH

3
それは正しいです。シミュレータを「
完全

おかげで、これはシミュレーターを管理する最も簡単な方法です。xcodeフォルダーからシミュレーターを削除する代わりに。これは私のために働く:)
Chirag

古いiOSバージョンのデバイスをどのように削除しますか?デバイスウィンドウには、iOS 9.1(Xcode 7.1)のシミュレーターのみが表示されます。Finderでdevice_set.plistを編集したり、フォルダーを削除したりしないようにしたいと思います。
バイオ

このスクリプトを使用して、シミュレーターを再作成することもできます:gist.github.com/cabeca/3ff77007204e5479f7af
tomi44g

154

Xcode 6以降では、パスからシミュレータを見つけて削除できます/Library/Developer/CoreSimulator/Profiles/Runtimes。有効にするためにXcodeを再起動します(必要でない場合があります)。


6.4こちら。それを有効にするためにマシンを再起動する必要がありました。
aasatt 2015

2
7.2-

xcode 8.0では、デバイスウィンドウで無効なシミュレータをクリアするために再起動が必要でした
Doug Amos

2
@thiagovelosoこれは、iOS 10.0以降ではなく、他のバージョンのシミュレータをインストールしなかったためです。9.3、8.4、および8.3 .simruntimeファイルしかありませんでした
Aleksey Potapov

1
私も参加できます~/Library/Developer/...
ロベルト

124

2018年10月の更新

前述のように、を使用xcrunしていくつかのことができます。

  • xcrun simctl list devicesまたはxcrun simctl list --jsonすべてのシミュレーターをリストする
  • xcrun simctl delete <device udid> 特定のデバイスを削除するには
  • xcrun simctl delete unavailable サポートされなくなったランタイムの古いデバイスを削除する

あなたができることxcrun(コードスニペットを参照)

元の回答

2017年9月、Xcode 9

ランタイム

あなたはここでそれらを見つけるでしょう:

/Library/Developer/CoreSimulator/Profiles/Runtimes

ここに画像の説明を入力してください

デバイス

デバイスを削除するには、ここに移動します:

~/Library/Developer/CoreSimulator/Devices

Xcodeを使用して削除する方がはるかに簡単:Xcode-> Window-> Devices and Simulators ここに画像の説明を入力してください

Xcodeがランタイムについて「忘れる」のを助け、再インストールを防ぐ-ここで.dmgファイルを削除します:

~/Library/Caches/com.apple.dt.Xcode/Downloads

私はそれが誰かを助けることを願っています🙂


8
ファイルシステムからデバイスを削除しないでください。使用しますxcrun simctl delete <device udid>。を実行xcrun simctl delete unavailableして、サポートされなくなったランタイムの古いデバイスを削除することもできます。
russbishop 2017年

1
〜/ Library / Caches / com.apple.dt.Xcode / Downloadsがありません(〜/ Library / Caches / com.apple.dt.Xcode /にDownloadsフォルダーがありません)。なぜ
auspicious99

1
リストしたフォルダパスが存在しない場合、Xcode 9.4
Peter Cullen

これは私が探していたものです。12.2でシミュレートされたデバイスを1つずつ削除するのではなく、12.2シミュレータ全体をシステムから削除します。パスはXCode 10.3で機能しました。削除後、再起動する必要があり、シミュレーターの数は半分になりました。
カタノワー

77

ターミナルでこのコマンドを実行して、マシンで使用中の現在のバージョンのXcode(8+?)からアクセスできないシミュレータを削除します。

xcrun simctl delete unavailable

また、シミュレータ関連のスペースを再利用する場合は、Michael Tsaiがsimログを削除すると30 GB節約できることがわかりました。

~/Library/Logs/CoreSimulator

2
ありがとう!明らかに、元の質問はXcode 4に関するものだったので、それ以来、状況は大きく変わりました!
デビッドH

2
それは私のためにほぼ20GBを解放します。ありがとう
Libor Zapletal 2017年

26

Xcode 4.6は、SDKを削除しただけの場合、古いバージョンのiOSシミュレータを再インストールするように求めます。これを回避するには、Xcodeキャッシュも削除する必要があります。そうすれば、起動時に古いSDKを再インストールする必要がなくなります。

iOS 5.0シミュレーターを削除するには、これらを削除してからXcodeを再起動します。

  1. /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/PhoneSimulator5.0.sdk
  2. 〜/ライブラリ/Caches/com.apple.dt.Xcode

たとえば、Xcodeのクリーンインストールを実行した後、Xcode設定からiOS 5.0シミュレーターをインストールしました。その後、5.1で十分だと判断しましたが、5.0バージョンは削除できませんでした。Xcodeは起動時にそれを再インストールすることを私に強い続けました。キャッシュファイルとSDKの両方を削除した後、要求されなくなりました。


1
ここでは少し正確な答えを示していますが、まだ自分でテストしていません。
Dan Reese

21

同じ問題がありました。私はスペースを使い果たしていました。

古いデバイスシミュレータを削除しても効果はありませんでした。

スペースの問題はxCodeが原因です。xCodeをインストールしてから、macOSのすべてのiOSバージョンのコピーが保持されました。

不要なiOSバージョンを削除して、ディスク領域を解放します。50GB以上のスペースを節約しました。

ここに画像の説明を入力してください ->単一のmacOSマシンに複数のユーザーがいる場合は、最初にxCodeをインストールしたユーザーアカウントでのみディレクトリを検索してください。


私は9G以上をカウントします-75Gをどのように回復しましたか?
David H

こんにちは@DavidH-75GBは私のクリーンアップの前でした。私は何年もxCodeを扱ってきたので、xCodeは私のマシンにiOS 7、8、9、10のすべてのバリアントをサイレントインストールしていました。実際には、私はおそらくiOS10とiOS11だけが必要です。
rustyMagnet 2017

1
これは素晴らしいです-私はこの場所を知りませんでした。ここには何十GBもあり、Xcodeのすべてのバージョンをインストールしたことがありました。
エシェロン

このフォルダには、xCode 9.4 @PeterCullenが存在します。最初にxCodeをインストールしたユーザーアカウントからアクセスするだけです。MacにxCodeを共有する2つのユーザーアカウントがあります。このフォルダを表示できるのは、xCodeをインストールしたユーザーアカウントだけです。
rustyMagnet

1
Finderを開いて「フォルダへ移動」を選択していますか?ライブラリは、デフォルトでは隠しフォルダです。
rustyMagnet

9

ここでいくつかの答えに従って、私のXcodeメニュー>ウィンドウ>デバイス>シミュレーターからいくつかのシミュレーターを削除しても、死にかけているディスク領域の助けにはなりませんでした: ここに画像の説明を入力してください

しかし、cd ~/Library/Developer/Xcode/iOS\ DeviceSupport実行するdu -sh *と私はこれらすべての人を手に入れました:

2.9G    10.0.1 (14A403)
1.3G    10.1.1 (14B100)
2.9G    10.3.2 (14F89)
1.3G    10.3.3 (14G60)
1.9G    11.0.1 (15A402)
1.9G    11.0.3 (15A432)
2.0G    11.1.2 (15B202)
2.0G    11.2 (15C114)
2.0G    11.2.1 (15C153)
2.0G    11.2.2 (15C202)
2.0G    11.2.6 (15D100)
2.0G    11.4 (15F79)
2.0G    11.4.1 (15G77)
2.3G    12.0 (16A366)
2.3G    12.0.1 (16A404)
2.3G    12.1 (16B92)

全部で33 GBです!

血浴が続いた

詳細はこちら


6

@ childno.deの回答に加えて、Macディレクトリ

/private/var/db/receipts/

まだ古いiPhoneSimulatorSDK .bomと次の.plistようなファイルが含まれている可能性があります。

/private/var/db/receipts/com.apple.pkg.iPhoneSimulatorSDK8_4.bom /private/var/db/receipts/com.apple.pkg.iPhoneSimulatorSDK8_4.plist

これらにより、Xcodeの設定の[ダウンロード]タブに、廃止されたシミュレータバージョンのチェックマーク()が表示される可能性があります。

不要なシミュレーターを削除するには、Mac端末から次のbashコマンドを使用して検索できます。

sudo find / -name "*PhoneSimulator*"

次に、対応するディレクトリに移動して、不要なSimulatorSDKを手動で削除します


4

XCodeで[ウィンドウ-デバイス]を開き、古いシミュレータを選択して削除します。


3

もう1つの方法は、Deploymentターゲットを最大値に変更することです。これにより、Schemeメニューに古いバージョンが表示されなくなります。

これを行うには、Target-> Summaryに移動し、Deployment Targetを変更します。


質問を投稿してから状況が変わったのかもしれませんが、投稿すると、Schemeメニューにさまざまなシミュレーターが表示され、正しいシミュレーターを選択するのが複雑になりました。
David H

3

私はすべての答えを試しました。それらのどれも私のために働いていません。

Sierra + Xcode 8.2で私にとってうまくいったのは、

/Library/Developer/CoreSimulator/Devices すべてのデバイスを削除します。

(多分これはあなたのために働かないかもしれません、多分これスタンドアロンとしての解決策であるかもしれません、または多分あなたは他の答えに加えてこれをしなければならないかもしれませんが、私はここですべての解決策をしましたので、何が功を奏したかわかりません)ここでの回答の一部は古く、シミュレータの場所が変更されていることに注意してください。Snowcrashの回答は最新のようです。


最初にXcodeをシャットダウンして、これを実行してから、Xcodeを再起動したと思いますか?
David H

@DavidHすみません、何をしたか覚えていません。3〜4週間問題が発生しました。私がプロジェクト/ sim-デバイスを切り替えるときにそれが起こっていたたびに...私はすべてを試してみました、そしてこれは私のためにそれをやっているように見えました...再びそれはあなたのために何か他のものになるかもしれません
Honey

@DavidHもこの回答を
Honey

Xcode 10以降の場合、フォルダーはです~/Library/Developer/CoreSimulator/Devices
blackjacx

3

すべてのシミュレータを削除する1行のbashスクリプトを作成しました。

xcrun simctl list devices | grep -E -o -i "([0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12})" | xargs -L1 xcrun simctl delete
  • xcrun simctl list devices マシンにインストールされているすべてのシミュレータを一覧表示します
  • grep -E -o -i "([0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12})" デバイスのUUIDを取得します
  • xargs -L1 xcrun simctl delete 見つかったUUIDごとにデバイスを削除しようとします

あなたはそれを実行しますすべてのものを見たい場合は、追加することができますecho前に、xcrunすなわち、

xcrun simctl list devices | grep -E -o -i "([0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12})" | xargs -L1 echo xcrun simctl delete

2

これらの回答の問題は、Xcodeが更新されるたびに、メニューと場所が変わることです。

移動して/Applications/Xcode.app/Contents/Developer/Platforms、不要なものを削除してください。Xcodeは正常に起動します。気になる場合は、ゴミ箱から復元するだけです。


2
Xcodeがバンドルをリクエストするシミュレーターをダウンロードすることを真剣に疑っています。確かに、ユーザーライブラリに移動します。それは私がXcodeの4と私の問題を持っていたので、私は古いものをダウンロードしたことがない、と述べた
デビッド・H

プラットフォームごと(iOS、watchOS、AppleTVOS、MacOS)に2つのフォルダーがあります。「iPhoneOS.platform」と「iPhoneSimulator.platform」があります。どれを削除すると思いますか?私は同僚に確認しましたが、彼はそれらの両方を正確に持っていましたが問題はありませんでした私が実際にここにいる理由はこの問題が原因であり、誰かが私に2つのシミュレーター/ Xcodeがあるためだと言われましたが、私が正しくない場合は修正しますXcodeの他のバージョンを削除し、9.3ランタイムも削除しました...
ハニー

1
これを行わないでください。Xcodeバンドル内のコンテンツをいじってはいけません。
russbishop

2

ある方法で修正しようとする人もいれば、別の方法で修正しようとする人もいます。基本的に、2つの問題があります。それらを確認して両方を解決すると、99%でこの問題が解決されます。

  1. YOUR_MAC_NAME(例Macintosh)-> Users-> YOUR_USERNAMEdaniel)-> Library-> Developer-> Xcode->にある古いデバイスシミュレータiOS Device Support。最新のものはそのままに13.2.3 (17B111)します。今日の時点ではですが、将来的には変更されます。13.2.3iOSバージョンの最大数(ここでは)は、それが新しいことを示しています。

  2. この後、Terminalを実行してデバイスをリストしますxcrun simctl list devices。それらの多くはそうであるかもしれないのでunavailable、実行してそれらを削除しますxcrun simctl delete unavailable。スペースも解放されます。すべてが問題ないことを確認するには、を実行してもう一度確認しますxcrun simctl list devices13.2.3以下のスクリーンショットのように、最新バージョン(ここ)のデバイスのみが表示されます。

ここに画像の説明を入力してください

おまけとして、この質問にはあまり関係がありませんが、空き容量があります。移動しますYOUR_MAC_NAME(例Macintosh) - > Users- > YOUR_USERNAME(例daniel) - > Library- > Developer- > Xcode- >Archives。多くのアーカイブされたデプロイ済みアプリケーションが表示されますが、おそらくそれらすべてが必要なわけではありません。もう使用されていないものを削除してみてください。

これら2つの方法とボーナス方法を使用して、Macで15 GBの追加スペースを得ることができました。

PS。Xcode-> Window-> Devices and Simulators-> Simulators(またはキーボードショートカットを使用する場合はCMD+ SHIFT+)2に移動してXcodeからシミュレータを削除し、それを削除するだけでは役に立ちません。あなたは本当に説明されたステップに行く必要があります。


-2

Command + Space

「シミュレータ」と入力します

不要になった古いベータシミュレータを開きます。

ドックで右クリックして、[オプション]> [Finderに表示]を選択します

アプリを閉じて、フォルダから削除します。

:)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.