Wiem, że to może być podstawowe pytanie w Androidzie. Ale co to jest Dalvik i dalvik-cache?
Wiem, że to może być podstawowe pytanie w Androidzie. Ale co to jest Dalvik i dalvik-cache?
Odpowiedzi:
Dalvik to maszyna wirtualna używana przez Androida. Zwykle jest uważany za wirtualną maszynę Java, chociaż nie jest to dokładnie poprawne. Używa modelu obiektowego, który jest identyczny z Javą, a jego model pamięci jest również prawie równoważny. Ale maszyna wirtualna dalvik jest maszyną wirtualną opartą na rejestrze, w przeciwieństwie do maszyn wirtualnych Java, które są oparte na stosie.
W związku z tym używa zupełnie innego kodu bajtowego niż Java. Jednak Android SDK zawiera narzędzie dx do tłumaczenia kodu bajtowego Java na kod bajtowy dalvik, dzięki czemu możesz pisać aplikacje na Androida w Javie.
Kiedy mówisz „ dalvik-cache ”, zakładam, że masz na myśli katalog / data / dalvik-cache, który można znaleźć na typowych urządzeniach z Androidem. Podczas instalowania aplikacji w systemie Android przeprowadza ona pewne modyfikacje i optymalizacje w pliku dex tej aplikacji (pliku zawierającym cały kod bajtowy dalvik aplikacji). Następnie buforuje wynikowy plik odex ( zoptymalizowany dex ) w katalogu / data / dalvik-cache , dzięki czemu nie musi przeprowadzać procesu optymalizacji za każdym razem, gdy ładuje aplikację.
Dalvik to maszyna wirtualna oparta na Javie, która uruchamia aplikacje Android na Androida. Dalvik-cache to obszar pamięci podręcznej dla Dalvik VM, jest on tworzony, gdy Dalvik VM optymalizuje Twoją aplikację do działania.
Jeśli chcesz, możesz poszukać więcej w Internecie na temat różnic między kodami operacyjnymi maszyn wirtualnych Dalvik a „normalnymi” kodami operacyjnymi maszyn wirtualnych Java.
Pamięci podręczne Dalvik to nic innego jak tymczasowa kompilacja kodu aplikacji przechowywanego jako pliki wykonywalne. Ponieważ mogą one być kompilowane dynamicznie z oryginalnego kodu aplikacji znajdującego się poza Dalvik Cache, możesz wyczyścić Dalvik Cache bez żadnych realnych kar.
Pamięć podręczna Dalvik nie jest już częścią nowoczesnych wersji Androida; Android 4.4 KitKat był ostatnim, który wykorzystał tę konstrukcję. Więcej informacji można znaleźć pod adresem https://en.wikipedia.org/wiki/Dalvik_(software) .