Có cách nào nhanh hơn / tốt hơn để xóa bộ nhớ cache của Trình mô phỏng iPhone hơn là xóa thư mục của nó?


95

Vì vậy, tôi vẫn còn khá mới đối với việc phát triển iOS và tôi thấy mình thường xuyên cần xóa DerivedData hoặc nội dung của thư mục Trình mô phỏng iPhone, để mọi thứ thực sự thực thi từ mã của tôi. Làm sạch trong Xcode không giống như làm trống các thư mục đó, phải không? Và nếu không, có cách nào dễ thực hiện hơn là kéo Finder xung quanh để đến gần chúng và xóa chúng không?


3 năm trước có thể đây không phải là một lựa chọn, nhưng hãy kiểm tra câu trả lời của tôi, nó phù hợp với tôi!
Adrian Florescu

Câu trả lời:


124

66:99 và leo núi:

, có một cách tốt hơn là đi vào từng trình mô phỏng trong thị trấn và đặt lại nội dung và cài đặt lần lượt. Cũng tốt hơn nhiều so với việc xem xét thư mục của trình mô phỏng của bạn và kéo bộ nhớ cache từ dưới chân của nó.

Thoát Trình mô phỏng iPhone, sau đó chạy xcruntrong Terminal:

xcrun simctl erase all

An toàn và hiệu quả.

Xem https://stackoverflow.com/a/26394597/218152 cho một thiết bị

xcrun simctl xóa [ID thiết bị]


Tuy nhiên, điều này có xóa chính các trình mô phỏng không? Vì vậy, sau đó tôi cần phải thêm chúng vào màn hình Thiết bị của Xcode?
Luke

1
Chỉ là nội dung. Từ tài liệu ( xcrun simctl help), xóa : Xóa nội dung và cài đặt của thiết bị. , không bị nhầm lẫn với xóa : Xóa một thiết bị hoặc tất cả các thiết bị không khả dụng.
SwiftArchitect

Tuyệt vời. Bị cám dỗ để chuyển câu trả lời đúng của tôi vì điều này :)
Luke

@lukech: Được đánh giá cao. Tôi tình cờ tìm ra giải pháp này khi cố gắng tiết kiệm bộ nhớ trên HD của mình và đang tìm clean build foldercách tiếp cận. Và phần thưởng cho bạn để giữ cho câu hỏi này hoạt động.
SwiftArchitect

lệnh này mất mãi mãi để chạy, làm thế nào để chọn mục tiêu sim với uuid?
the_prole

104

Trong menu Trình mô phỏng iOS , có một tùy chọn được gọi là Đặt lại Nội dung và Cài đặt ...

Cái này cần phải dùng mẹo.

BIÊN TẬP:

Để làm cho việc này nhanh chóng và dễ dàng hơn nhiều, tôi đã thêm một phím tắt như thế này ...

Trong Tùy chọn Hệ thống, chọn Bàn phím

Tùy chọn hệ thống bàn phím

Sau đó chọn tab Phím tắt . Và nhấp vào Phím tắt ứng dụng

Phím tắt ứng dụng Nhấp vào nút dấu cộng để thêm một phím tắt khác.

nhập mô tả hình ảnh ở đây Cuối cùng:

  1. Nhấp vào trình đơn thả xuống Chọn Trình mô phỏng từ Ứng dụng:. Nếu nó không có ở đó, hãy cuộn xuống cuối danh sách ứng dụng và chọn "Khác ...". Sau đó gõ "simulator" vào tìm kiếm và thêm Simulator từ đó.
  2. Erase All Content and Settings ... vào Tiêu đề Menu: hộp văn bản.
  3. Gõ phím tắt ưa thích của bạn vào Keyboard Shortcut: . (Tôi sử dụng dấu chấm lệnh)
  4. Nhấp vào nút Thêm .

nhập mô tả hình ảnh ở đây

Bây giờ, khi ở trong Trình mô phỏng iOS, bạn có thể chỉ cần sử dụng phím tắt mới để đặt lại.


Nếu Trình mô phỏng không xuất hiện trong danh sách thả xuống:

  1. Trong cửa sổ Finder, hãy chuyển đến thư mục Ứng dụng của bạn.
  2. Nhấp chuột phải vào Xcode và chọn "Hiển thị Nội dung Gói".
  3. Hướng đến Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/
  4. Bạn sẽ thấy iPhone Simulator.app.
  5. Bây giờ, trong ứng dụng Cài đặt, thay vì chọn Trình mô phỏng iOS bị thiếu, bạn chọn Khác ....
  6. Thao tác này sẽ làm xuất hiện một cửa sổ có danh sách Ứng dụng.
  7. Bây giờ, hãy kéo iPhone Simulator.app từ cửa sổ Finder của bạn đến cửa sổ xuất hiện khi bạn nhấp vào Khác ....

Trình mô phỏng iOS không còn xuất hiện trong menu thả xuống Ứng dụng. Tôi có nên chọn "xCode.app" không? Tôi đang sử dụng hệ điều hành 10.8.3 với iOS Simulator 6.0.
potench

8
Trong cửa sổ tìm kiếm, hãy chuyển đến thư mục Ứng dụng của bạn. Nhấp chuột vào Option và chọn "Hiển thị Nội dung Gói". Điều hướng đến Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/thư mục. Bạn sẽ thấy iPhone Simulator.app. Bây giờ, trong ứng dụng Cài đặt, thay vì chọn iOS Simulatorcái bị thiếu, bạn chọn Other.... Thao tác này sẽ làm xuất hiện một cửa sổ có danh sách Ứng dụng. Bây giờ, hãy kéo iPhone Simulator.apptừ cửa sổ Finder của bạn đến cửa sổ xuất hiện khi bạn nhấp vào Other....
Jeff Wolski

1
Tôi đến đây để tìm kiếm thứ khác, nhưng đã vượt qua các bước của bạn chỉ vì câu trả lời của bạn quá hay. cảm ơn!
kodybrown

1
Reset Content and Settingssẽ không xóa nội dung phía máy khách trên VPN. Tôi đã vật lộn với điều này một lúc để tự hỏi tại sao hoạt ảnh CSS của tôi hoạt động ở mọi nơi ngoại trừ trình mô phỏng, chỉ để phát hiện ra rằng nó đang lưu vào bộ đệm các tệp cũ ngay cả khi tôi đã xóa nội dung và cài đặt. Điều duy nhất kết thúc với tôi là ngắt kết nối khỏi VPN của tôi và khởi động lại máy ảo của tôi sau đó kết nối lại (khung mà tôi sử dụng các phiên bản cho tất cả nội dung của mình) - bạn cũng có thể phiên bản chúng theo cách thủ công nếu chỉ thử nghiệm, nhưng điều đó thật khó chịu. Đây là điều mà Apple nên sửa chữa; nó chỉ xảy ra khi tôi thử nghiệm iOS.
Benny

3
Nếu bạn không thể tìm thấy mô phỏng tại đường dẫn Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/như ra nhọn bởi @JeffWolski, Bạn có thể tìm kiếm nó bằng các thuật ngữ tìm kiếmsimulator.app
atulkhatri

8

Để phát triển và thử nghiệm web trên Trình mô phỏng iOS (Safari):

  1. Khi mở cả Trình mô phỏng iOS và Safari, đi tới Safari> Phát triển> Trình mô phỏng iOS và chọn trang của bạn, trang này sẽ cung cấp cho bạn quyền truy cập vào các công cụ Trình kiểm tra web.

  2. Đi tới Safari> Develop> Empty Caches để xóa bộ nhớ cache trên iOS Safari.


@AdrianFlorescu đây là một giải pháp để gỡ lỗi phát triển web trên iOS Safari, nhưng tôi nghĩ rằng câu hỏi liên quan đến phát triển ứng dụng iOS.
Ryan

4
Không hoạt động trên Safari 9.0.3 với trình gỡ lỗi từ xa. "Tắt bộ nhớ đệm" cũng không có tác dụng.
Gamadril,

1
Thiết lập này không có gì cho tôi (làm bộ nhớ cache không thực sự rõ ràng trên safari di động)
HandiworkNYC.com

Vâng. Có vẻ như nó không làm sạch bộ nhớ cache của iOS nữa. Tôi đoán nó đã xảy ra trong quá khứ ...
Yosh

đây là giải pháp duy nhất dường như đang hoạt động stackoverflow.com/a/51421939/1055015
Exlord
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.