Chuyển đổi thủ công từ ART sang Dalvik


21

Tôi muốn dùng thử thời gian chạy ART mới, nhưng không nhận ra ROM tùy chỉnh của tôi không hỗ trợ nó. Vì vậy, bây giờ tôi đang nhận được các tin nhắn Force Đóng định kỳ sau khi khởi động và không thể truy cập vào menu cài đặt để chuyển về Dalvik. Vì vậy, trước khi tôi xóa sạch mọi thứ và dành hàng giờ để thiết lập điện thoại của mình từ đầu, có cách nào để tự thay đổi trở lại Dalvik từ menu khôi phục không? Tôi nghĩ rằng nên có một lá cờ ở đâu đó, hướng dẫn Android thực hiện 'biên dịch lại' sau khi khởi động lại.

Thông qua menu recovery, tôi có quyền truy cập root đầy đủ qua shell adb và có thể gắn kết tất cả các hệ thống tập tin.


Tôi gặp vấn đề với ART trên ROM 4.4.4. Vài ngày sau khi chuyển đổi từ dalvik, tôi bị kẹt trong vòng lặp khởi động với logcat adb hiển thị rất nhiều lỗi sự cố bao gồm `art / runtime / runtime.cc: 203] Hủy bỏ thời gian chạy ... Chuyển trở lại dalvik, tôi phải khởi động lại vào recovery và sử dụng lệnh echo để chuyển trở lại dalvik. Điều đó đã khắc phục vấn đề
Stan Kurdziel

Câu trả lời:


18

Tôi vừa mới làm điều này!

/data/property/persist.sys.dalvik.vm.liblà một tệp văn bản chứa một trong hai giá trị: 'libart.so' hoặc 'libdvm.so'. Bạn có thể thay đổi từ ART sang Dalvik chỉ bằng cách chỉnh sửa tệp này.

Ví dụ: shell adb 'echo libdvm.so> /data/property/persist.sys.dalvik.vm.lib'


5
FWIW, thực hiện "setprop contin.sys.dalvik.vm.lib libdvm.so" sẽ có tác dụng tương tự - các thuộc tính "vẫn tồn tại" được duy trì bằng cách ghi chúng vào một tệp.
fadden

Khi điều này xảy ra với tôi, tôi không có quyền truy cập shell adb trong khi Android đang chạy. Tuy nhiên, tôi đã có thể khởi động lại vào ClockworkMod Recovery, xóa phân vùng bộ nhớ cache và bộ đệm dalvik để giải phóng một số không gian lưu trữ flash, gắn phân vùng / dữ liệu của tôi và sau đó (cuối cùng) sử dụng shell adb như được mô tả trong câu trả lời này. Phù!
ʇsәɹoɈ

Tôi đã thử điều này trên Android 5.0.1 (Omega V28) trên Galaxy S4 GT-I9500 của tôi. Các tập tin đã được gọi /data/property/persist.sys.dalvik.vm.lib.2trong trường hợp của tôi. Sau khi khởi động lại, bằng cách nào đó, nó trở lại "libart.so". Bất cứ ý tưởng tại sao nó làm điều đó và làm thế nào để thay đổi nó vĩnh viễn?
EM0

Điều này xảy ra ngay cả khi tôi thay đổi nội dung tệp qua shell adb khi khôi phục. Vì vậy, nó không bị ghi đè khi tắt máy, nhưng khi khởi động, có vẻ như vậy.
EM0
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.