Thư mục SDK Android chiếm rất nhiều dung lượng đĩa. Chúng ta có cần giữ tất cả các hình ảnh hệ thống không?


247

rất nhiều hình ảnh hệ thống chồng chất lên đĩa của tôi trong thư mục sdk android. tôi hầu như không sử dụng trình giả lập. Có thể là một lần trong 6 tháng. Hầu hết sự phát triển của tôi là trực tiếp trên thiết bị. Những gì tôi muốn kiểm tra là, việc loại bỏ các hình ảnh hệ thống (ít nhất là đối với APIS cũ tức là <22) có ảnh hưởng đến sự phát triển không?

Ngoài ra, thư mục google apis nhìn thấy bên dưới. Tôi có nên giữ nó cho tất cả các phiên bản hay chỉ một phiên bản mới nhất?

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

Ảnh chụp màn hình ở trên là từ công cụ WinDirStat. - https://windirstat.net


cảm ơn! những gì về thư mục google_apis .... tôi cũng có thể xóa chúng không? điều đó sẽ ảnh hưởng đến việc gỡ lỗi của tôi trên thiết bị?
AndroidMechanic - Viral Patel

25
Nếu bất cứ ai quan tâm, bộ phân tích không gian đĩa trên hình ảnh được gọi là WinDirStat .
Tomáš Zato - Phục hồi Monica

4
Lưu ý bên lề: Đơn giản như thực hiện một du -sh * trên hộp Linux!
dùng3

trên linux để xem các thư mục lớn nhất: du -m ~ / src / android-sdk-linux | sort -n | tail -100
Scott Stensland

@lijo đã cập nhật câu hỏi
AndroidMechanic - Viral Patel

Câu trả lời:


204

Hình ảnh hệ thống là hệ điều hành Android được cài đặt sẵn và chỉ được các trình giả lập sử dụng. Nếu bạn sử dụng thiết bị Android thực sự của mình để gỡ lỗi, bạn không còn cần đến chúng nữa, vì vậy bạn có thể xóa tất cả chúng.

Cách sạch nhất để loại bỏ chúng là sử dụng SDK Manager. Mở SDK Manager và bỏ chọn những hình ảnh hệ thống và sau đó áp dụng.

Ngoài ra, vui lòng xóa các thành phần khác (ví dụ: các cấp SDK cũ) không sử dụng được.


Cảm ơn cho câu trả lời chi tiết bắt buộc ... làm cho nó rõ ràng. Một nghi ngờ cuối cùng. Thư mục google_apis nhìn thấy bên trong mỗi phiên bản Android trong ảnh chụp màn hình ở trên cũng chỉ được yêu cầu cho hình ảnh hệ thống phải không? họ cũng có thể được gỡ bỏ?
AndroidMechanic - Viral Patel

chúng ta có thể di chuyển các tệp đó sang các ổ đĩa khác nhau không, nếu có thì tất cả các cài đặt cần phải được thực hiện để di chuyển các hình ảnh
cùng

@sameer Bạn có thể di chuyển nó và sau đó trỏ IDE của bạn đến vị trí Trình quản lý SDK. Tôi đã thử điều đó một lần, nhưng nó khiến Eclipse của tôi mất 5 phút để mở mỗi lần ... xóa các hình ảnh hệ thống giúp tôi tiết kiệm 40GB trên ổ SSD của mình!
Demonslay335

Có nhiều công cụ xây dựng SDK Android trong trình quản lý sdk của tôi, việc xóa các bản sửa đổi cũ có thể gây ra lỗi nào hoặc ảnh hưởng đến hiệu suất?
Shima Erfan

140

Bạn không cần phải giữ hình ảnh hệ thống trừ khi bạn muốn sử dụng trình giả lập trên máy tính để bàn của mình. Cùng với nó, bạn có thể loại bỏ những thứ không mong muốn khác để xóa không gian đĩa .

Thêm vào như một câu trả lời cho câu hỏi của riêng tôi vì tôi đã phải thuật lại điều này với những người trong nhóm của tôi hơn một vài lần. Do đó câu trả lời này như một tài liệu tham khảo để chia sẻ với những người tò mò khác.

Trong vài tuần qua, có một số đồng nghiệp đã hỏi tôi làm thế nào để thoát khỏi những thứ không mong muốn một cách an toàn để giải phóng không gian đĩa (hầu hết trong số họ là người mới bắt đầu). Tôi đã chuyển hướng họ đến câu hỏi này nhưng họ đã quay lại với tôi để thực hiện các bước. Vì vậy, đối với người mới bắt đầu sử dụng Android ở đây là hướng dẫn từng bước để loại bỏ một cách an toàn những thứ không mong muốn.

Ghi chú

  • Đừng mù quáng xóa mọi thứ trực tiếp khỏi đĩa mà bạn "nghĩ" không cần phải chiếm. Tôi đã làm điều đó một lần và phải tải lại.
  • Đảm bảo rằng bạn có một danh sách tất cả các dự án đang hoạt động với loại trình giả lập (nếu có) và Cấp độ API và công cụ Xây dựng cần thiết cho những dự án để tiếp tục làm việc / biên dịch đúng cách.

Đầu tiên, hãy chắc chắn rằng bạn sẽ không sử dụng trình giả lập và sẽ luôn luôn phát triển trên một thiết bị vật lý. Trong trường hợp bạn sẽ cần trình giả lập, hãy ghi lại Cấp độ API và loại trình giả lập bạn sẽ cần. Đừng loại bỏ chúng. Đối với phần còn lại làm theo các bước dưới đây:

Các bước để xóa an toàn những thứ không mong muốn khỏi thư mục SDK Android trên đĩa

  1. Mở Trình quản lý SDK Android độc lập. Để mở, hãy thực hiện một trong các thao tác sau:
  • Nhấp vào nút Trình quản lý SDK trên thanh công cụ trong studio android hoặc nhật thực
  • Trong Android Studio, đi đến cài đặt và tìm kiếm "SDK Android". Nhấp vào SDK Android -> "Mở Trình quản lý SDK độc lập"
  • Trong Eclipse, mở menu "Window" và chọn "Trình quản lý SDK Android"
  • Điều hướng đến vị trí của thư mục android-sdk trên máy tính của bạn và chạy "SDK Manager.exe"

.

  1. Bỏ chọn tất cả các mục kết thúc bằng "Ảnh hệ thống". Mỗi cấp độ API sẽ có nhiều hơn một vài. Trong trường hợp bạn cần một số và đã tìm ra danh sách đã để chúng được kiểm tra để tránh mất chúng và phải tải xuống lại.

.

  1. Tùy chọn (có thể giúp tiết kiệm dung lượng ổ đĩa hơn một chút): Để giải phóng thêm dung lượng, bạn cũng hoàn toàn có thể bỏ chọn các mức API chưa được yêu cầu. Hãy cẩn thận một lần nữa để tránh tải xuống lại một cái gì đó bạn đang thực sự sử dụng trong các dự án khác.

.

  1. Cuối cùng, hãy đảm bảo bạn có ít nhất các mục sau (kiểm tra hình ảnh bên dưới) để các cấp API còn lại có thể hoạt động trơn tru với thiết bị vật lý của bạn.

Cuối cùng, các thành phần được cài đặt sdk android sạch sẽ trông giống như thế này trong trình quản lý SDK.

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


9
Xóa hình ảnh hệ thống trong trình quản lý SDK là giải pháp sạch nhất. Điều này ít nhất nên có nhiều upvote, hoặc thậm chí là câu trả lời được chấp nhận.
Levite

4
Cảm ơn @Levit đây là câu trả lời cho câu hỏi của riêng tôi mà tôi đã đăng sau vì tôi nghĩ mọi người sẽ có lợi khi biết phương pháp này. Câu trả lời tôi đánh dấu được chấp nhận là câu trả lời thực sự giúp tôi lúc đó.
AndroidMechanic - Viral Patel

1
Điều này rất hữu ích, cảm ơn bạn. Việc sửa đổi duy nhất cho các bước của bạn tôi muốn đề xuất là bước # 2. Bạn muốn KIỂM TRA các mục bạn muốn xóa, rồi bấm vào nút Xóa Gói ở góc dưới bên phải. Cảm ơn một lần nữa!
Adam Plocher

Cảm ơn bạn rất nhiều, tôi không biết sdk đã tải xuống hình ảnh giả lập (Mac của tôi đã khóc nó hết dung lượng cho đến khi tôi thấy bài đăng này).
ScarletMerlin

Câu hỏi là " Chúng ta có cần giữ tất cả các Hình ảnh Hệ thống không? " Và điều này không trả lời câu hỏi đó.
user34660

8

Tôi có 20,8 GB trong thư mục C: \ Users \ ggo \ AppData \ Local \ Android \ Sdk \ system-hình ảnh (6 hình ảnh android: - android-10 - android-15 - android-21 - android-23 - android-25 - android-26).

Tôi đã nén thư mục C: \ Users \ ggo \ AppData \ Local \ Android \ Sdk \ system-hình ảnh.

Bây giờ chỉ mất 4,65 GB.

C: \ Users \ ggo \ AppData \ Local \ Android \ Sdk \ system-hình ảnh

Tôi đã không gặp phải bất kỳ vấn đề cho đến nay ...

Nén dường như thay đổi từ 2/3 đến 6, đôi khi nhiều hơn:

android-10

android-23

android-25

android-26


1
Làm thế nào bạn nén nó?
krv

1
nhấp chuột phải vào thư mục để nén (thư mục ảnh hệ thống tại đây) => Thuộc tính => Nâng cao => bật "Nén nội dung để tiết kiệm dung lượng ổ đĩa" => OK => Áp dụng => chọn "Áp dụng thay đổi cho thư mục này, thư mục con và tệp "(Nên được chọn theo mặc định) và nhấp vào OK. (có thể tốt hơn là thoát Android Studio và đóng trình giả lập hiện đang chạy trước khi nén, vì một số tệp có thể bị khóa).
ggo

3
Điều này sẽ ảnh hưởng đến hiệu suất, do đó, chỉ thực hiện đối với các tệp hiếm khi được sử dụng (không bao gồm các tệp đã được nén như ảnh, video, zip, jar, v.v.).
Leon

6

Tôi đề nghị hai bước để giải quyết vấn đề SDK cồng kềnh.

Đầu tiên, tôi xóa tất cả trừ hai phiên bản Android:

  1. Phiên bản hiện tại, ví dụ 6.0 Marshmallow khi viết bài này. Phiên bản này là để thử nghiệm và phát triển đến những thiết bị cầm tay Nexus mới nhất và hiện đại nhất đang chạy cùng với một vài thương hiệu khác.

  2. Một phiên bản cũ hơn, ví dụ 4.04 Ice Cream Sandwich. Điều này là để cung cấp khả năng tương thích cho phần lớn các thiết bị cầm tay. Bạn mất một số chức năng của các phiên bản mới hơn, nhưng bạn có được mẫu số chung thấp nhất về khả năng tương thích.

Thứ hai, tôi loại bỏ các trình giả lập, và chỉ giữ lại hai phần trên. Tôi đã nói với nó là không lưu trữ trạng thái hệ thống hoàn chỉnh vào đĩa, điều này thực sự cảnh báo bạn sẽ chiếm rất nhiều dung lượng, mặc dù nó giúp khởi động nhanh hơn. Chỉ cần khởi động trình giả lập trước khi bạn đi pha cà phê vào buổi sáng :)

Nếu đó là quá nhiều không gian, hãy loại bỏ hoàn toàn các trình giả lập. Chọn một vài thiết bị cầm tay cũ hơn từ Ebay sẽ cung cấp cho bạn tất cả các nền tảng thử nghiệm bạn cần. Chúng thậm chí không phải hoàn toàn hoạt động - ví dụ, nhiều ứng dụng không cần kết nối SIM và di động.

Môi trường Android của tôi đã chiếm 32 hợp đồng trên Macbook Air 128 gigabyte của tôi. Không thể tiếp tục làm điều này. Một ngày nào đó họ sẽ tạo ra Macbook Air terabyte nhưng cho đến lúc đó, họ đã giảm cân.


Câu hỏi ban đầu có câu " Hầu hết sự phát triển của tôi là trực tiếp trên thiết bị. " Nhưng đối với tất cả chúng ta sử dụng trình giả lập thì đây là câu trả lời duy nhất cho câu hỏi " Chúng ta có cần giữ tất cả Hình ảnh hệ thống không? ".
user34660

5

Đây là thứ tối thiểu tôi giữ để phát triển Android hàng ngày (bao gồm cả mã sản xuất). Chỉ bao gồm các phiên bản mới nhất từ ​​API 25 đến API 27 (Nougat đến Android P) và bạn có thể làm việc tuyệt vời với nó.

  • Để giảm thiểu hơn nữa, chỉ cần giữ bất kỳ một trong các phiên bản dưới đây như nhau và giữ các phiên bản thấp hơn, tức là API 16 với cùng các tệp được tải xuống như bên dưới.


4

Có một cách để loại bỏ hình ảnh hệ thống một cách an toàn

Truy cập SDK Manager trên thanh công cụ:

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

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

Truy cập SDK Android:

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

Trong tab Nền tảng SDK, bỏ chọn nền tảng nào bạn muốn hủy bỏ:

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

Nhấp vào ok và xác nhận xóa:

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


1

Ngoài các câu trả lời khác, thư mục sau có chứa các hình ảnh hệ thống có thể xóa trên máy Mac cho Android Studio 2.3.3. Tôi đã có thể xóa các thư mục android-16 và android-17 mà không gặp vấn đề gì vì tôi không có trình giả lập nào sử dụng chúng. (Tôi đã giữ Android-24 đang được sử dụng.)

$ pwd
/Users/gareth/Library/Android/sdk/system-images

$ du -h
2.5G    ./android-16/default/x86
2.5G    ./android-16/default
2.5G    ./android-16/google_apis/x86
2.5G    ./android-16/google_apis
5.1G    ./android-16
2.5G    ./android-17/default/x86
2.5G    ./android-17/default
2.5G    ./android-17
3.0G    ./android-24/default/x86_64
3.0G    ./android-24/default
3.0G    ./android-24
 11G    .

1

Bằng cách xóa tất cả trình giả lập, đôi khi bộ nhớ sẽ không giảm theo mong đợi của chúng tôi. Vì vậy, mở bên dưới đề cập đến đường dẫn trong ổ đĩa c của bạn

C: \ Người dùng {Tên người dùng} .android \ avd

Trong thư mục avd này, bạn có thể thấy tất cả các avd mà bạn đã tạo trước đó. Vì vậy, bạn cần xóa tất cả các avd sẽ xóa tất cả các khoảng trắng không sử dụng lấy bởi trình giả lập của bạn. Hơn tạo trình giả lập mới cho bạn làm việc.


0

Trong thư mục này có tất cả các hình ảnh giả lập. Nếu bạn không sử dụng trình giả lập thì bạn có thể xóa thư mục này.

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.