Чи є швидший / кращий спосіб очистити кеш-пам'ять iPhone Simulator, ніж видалити його каталог?


95

Тож я все ще досить новий в розробці iOS, і мені досить регулярно здаватися, що потрібно видаляти або DerivedData, або вміст каталогу iPhone Simulator, щоб фактично виконати з мого коду. Чистка в Xcode не робить те саме, що спорожняє ці каталоги, чи не так? А якщо ні, чи є простіший спосіб це зробити, ніж тягнути Finder навколо, щоб дістатися до них, і очистити їх?


3 роки тому, можливо, це не було варіантів, але перевірити мою відповідь, це працює для мене!
Адріан Флореску

Відповіді:


124

66:99 та сходження:

Так , є кращий спосіб, ніж заходити у кожен окремий симулятор у місті та скидати вміст та налаштування по одному. Також набагато краще, ніж заглядати в каталог вашого симулятора і виривати кеш з-під ніг.

Закрийте iPhone Simulator, а потім запустіть xcrunу терміналі:

xcrun simctl erase all

Безпечно та ефективно.

Див. Https://stackoverflow.com/a/26394597/218152 для одного пристрою

xcrun simctl erase [ідентифікатор пристрою]


Це все-таки стирає симулятори? Так що мені потім потрібно буде повторно додати їх на екран пристроїв Xcode?
Лука

1
Просто зміст. З документації ( xcrun simctl help) стерти : стерти вміст та налаштування пристрою. , не плутати з видаленням : Видалити пристрій або всі недоступні пристрої.
SwiftArchitect

Дивовижно. Спокуса змінити мою правильну відповідь у світлі цього :)
Лука

@lukech: Дуже вдячний. Я натрапив на це рішення, намагаючись зберегти пам'ять на своєму HD, і шукав clean build folderпідходу. І вам допомагає підтримувати це питання активним.
SwiftArchitect

ця команда триває вічно, як вибрати цільову SIM-карту за допомогою uuid?
the_prole

104

У меню iOS Simulator є опція Reset Content and Settings ...

Це повинно зробити трюк.

Редагувати:

Щоб зробити це набагато швидше і простіше, я додав клавішу швидкого доступу, як це ...

У налаштуваннях системи виберіть Клавіатура

Налаштування клавіатури

Потім виберіть вкладку Ярлики . І натисніть ярлики додатків

Ярлики додатків Клацніть кнопку плюс, щоб додати ще один ярлик.

введіть тут опис зображення Нарешті:

  1. Клацніть Вибір симулятора зі спадного меню Application:. Якщо його немає, перейдіть до нижньої частини списку програм і виберіть "Інше ...". Потім введіть "симулятор" в пошук і додайте Симулятор звідти.
  2. Введіть Видалити весь вміст і налаштування ... у назву меню: текстове поле.
  3. Введіть бажану комбінацію клавіш в Keyboard Shortcut: . (Я використовую командний період)
  4. Натисніть кнопку Додати .

введіть тут опис зображення

Тепер, перебуваючи у вашому iOS Simulator, ви можете просто скористатися новою комбінацією клавіш для скидання.


Якщо Simulator не відображається у спадному списку:

  1. У вікні Finder перейдіть у папку Applications.
  2. Клацніть правою кнопкою миші Xcode і виберіть "Показати вміст пакета".
  3. Перейдіть до Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/
  4. Ви побачите iPhone Simulator.app.
  5. Тепер у програмі Налаштування замість того, щоб вибрати iOS Simulator, якого немає, ви вибираєте Інше ....
  6. Це призведе до появи вікна зі списком програм.
  7. Тепер перетягніть iPhone Simulator.app з вікна Finder у вікно, яке з’явилося, коли ви натиснули Інше ....

Симулятор iOS більше не з’являється у спадному меню Application. Чи варто просто вибрати "xCode.app"? Я на ОС 10.8.3 з iOS Simulator 6.0.
потенція

8
У вікні пошуку перейдіть до папки Програми. Клацніть опцією Xcode та виберіть "Показати вміст пакета". Перейдіть до Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/папки. Ви побачите iPhone Simulator.app. Тепер, у додатку Налаштування, замість того, щоб вибрати, iOS Simulatorякого не вистачає, ви вибираєте Other.... Це призведе до появи вікна зі списком програм. Тепер перетягніть iPhone Simulator.appз вікна Finder до вікна, яке з’явилося після натискання Other....
Джефф Вольскі,

1
Я прийшов сюди шукати щось інше, але пройшов ваші кроки лише тому, що ваша відповідь була така хороша. Дякую!
kodybrown

1
Reset Content and Settingsне очистить клієнтські активи на VPN. Я певний час боровся з питанням, чому мої анімації CSS працюють скрізь, окрім тренажера, лише для того, щоб дізнатися, що це кешування старих файлів, навіть коли я видалив вміст та налаштування. Єдине, що для мене працювало - це відключення від мого VPN та перезапуск моєї VM, а потім повторне підключення (в рамках якої я використовую версії всіх своїх активів) - ви також можете їх версії вручну, якщо просто тестувати речі, але це дратує. Це те, що Apple має виправити; це відбувається лише при тестуванні на iOS для мене.
Бенні

3
Якщо ви не можете знайти тренажер на шляху Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/ як вказав @JeffWolski, ви можете шукати його за пошуковою терміномsimulator.app
atulkhatri

8

Для веб- розробки та тестування на iOS Simulator (Safari):

  1. З відкритими iOS Simulator та Safari, перейдіть до Safari> Developer> iOS Simulator та виберіть свою сторінку, яка надасть вам доступ до інструментів Web Inspector.

  2. Перейдіть у Safari> Розробити> Порожні кеші, щоб очистити кеш на iOS Safari.


@AdrianFlorescu це рішення для налагодження веб-розробки на iOS Safari, але я думаю, що питання стосувалося розробки додатків для iOS.
Райан

4
Не працює на Safari 9.0.3 з віддаленим налагоджувачем. "Вимкнути кеші" також не впливає.
Гамадриль

1
Цей параметр для мене нічого не робить (фактично не очищає кеш на мобільному сафарі)
HandiworkNYC.com

Так. Схоже, це вже не очищає кеш iOS. Я думаю, це було раніше ...
Йош,

це єдине рішення , яке , здається, працює stackoverflow.com/a/51421939/1055015
Exlord
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.