Để trả lời câu hỏi của bạn:
Tôi không biết về bất kỳ phiên bản Android nào mà Dalvik không bị vô hiệu khi khởi động. Có lẽ phiên bản ban đầu 1.0 có điều đó, tôi thực sự không biết, đã trải qua Eclair, Froyo, Gingerbread, Ice Cream Sandwich. Bạn cần nhìn vào cây nguồn và khởi động lại nó thành CupCake hoặc Donut (lần lượt là 1,5 và 1,6)
Lý do chi tiết :)
Lý do Wipe Cache phải được sử dụng là vì tất cả các apks, bao gồm cả apks hệ thống, đều có tệp dex được đính kèm, khi ROM được khởi động lần đầu tiên, Dalvik của Android sẽ đi qua từng apks đó và giải nén tệp dex từ nó và đặt nó vào bộ đệm trong /data/dalvik-cache
đó tăng tốc độ thực thi ứng dụng.
Hầu hết các ROM đều có apks là odex 'ed, bộ đệm được gói vào chính apk dưới dạng tệp bên ngoài.
Rất nhiều bộ điều biến ROM tùy chỉnh sẽ có các apks deodex 'd, nghĩa là tệp dex được thay thế và đóng gói lại để giúp chủ đề / sửa đổi apk dễ dàng hơn.
Khi bạn flash ROM tùy chỉnh và không xóa bộ nhớ cache, apk của ROM tùy chỉnh mới hơn sẽ có tệp dex khác được đính kèm và khi Dalvik đi qua chúng, nó sẽ thấy tệp dex được lưu trong bộ nhớ cache hiện có trong thư mục và bỏ qua nó, sau đó khi bạn chạy ứng dụng, bạn được đảm bảo một lực lượng đóng hoặc ANR (Ứng dụng không phản hồi).
Bạn sẽ không mất dữ liệu mỗi lần, nếu sử dụng ClockWorkMod Recovery và Wipe Data được chọn, thì có, tất cả các cài đặt liên quan đến ứng dụng sẽ bị xóa sạch - hãy nhìn vào /data/app
.
Vì vậy, bạn có thể xóa bộ nhớ cache nhưng không xóa dữ liệu , những gì được thực hiện một cách hiệu quả, được đặt trong các ứng dụng mới hơn, trong đó nó có các cài đặt được giữ lại. Đây là một tình huống khá phổ biến với các cơn ác mộng CyanogenMod khi bản dựng ROM không ổn định / thử nghiệm được flash và các cài đặt được giữ lại bằng xóa bộ nhớ cache. Số dặm sẽ thay đổi tùy thuộc vào ứng dụng nào được tải xuống từ thị trường (cài đặt có thể đã thay đổi theo phiên bản có thể bị lỗi).
Để có kết quả tốt nhất, sẽ là khôn ngoan khi thực hiện cả Xóa dữ liệu và Xóa bộ nhớ cache để đảm bảo tính toàn vẹn và không có lỗi chương trình trong chính ứng dụng.
Vâng, điều đó có nghĩa là thời gian khởi động sẽ chậm hơn nhưng thời điểm ban đầu lại tắt. Sau đó nó sẽ khởi động nhanh hơn. Thực sự, tóm lại, việc xóa bộ nhớ cache thông qua CWM thực sự giúp tăng tốc và đảm bảo không có dư lượng từ phiên bản trước có thể được xử lý (Bây giờ ở giai đoạn này, tôi nhận ra câu hỏi của bạn vì vậy công bằng, thực sự không thấy Android không thực hiện việc vô hiệu hóa bộ đệm khi khởi động khi flash ROM mới ..)
Sử dụng nguồn Luke một cách nghiêm túc! :CƯỜI MỞ MIỆNG
frameworks/base/core/java/com/android/internal/os/ZygoteInit.java
là mã khởi động cho mỗi apk apk. Nó tương tác với mã C gốc được tìm thấy trong dalvik
cây thư mục chứa các hướng dẫn chipset cụ thể để diễn giải mã byte trong apk sang tập lệnh CPU gốc. ARMv6 gần như là một phiên bản hack của ARMv5 (vốn là chipset gốc trong các phiên bản Android cũ trước Eclair), vì vậy bạn sẽ không thấy ARMv6 trong nguồn AOSP từ google. CyanogenMod sẽ có ARMv6 trong nguồn của họ.