Ich weiß, dass dies eine grundlegende Frage in Android sein kann. Aber was ist Dalvik und Dalvik-Cache?
Ich weiß, dass dies eine grundlegende Frage in Android sein kann. Aber was ist Dalvik und Dalvik-Cache?
Antworten:
Dalvik ist die virtuelle Maschine, die von Android verwendet wird. Es wird allgemein als eine virtuelle Java-Maschine angesehen, obwohl dies nicht genau richtig ist. Es verwendet ein Objektmodell, das mit Java identisch ist, und sein Speichermodell ist ebenfalls nahezu gleichwertig. Die Dalvik-VM ist jedoch eine registergestützte VM im Gegensatz zu Java-VMs, die stapelbasiert sind.
Dementsprechend verwendet es einen völlig anderen Bytecode als Java. Das Android SDK enthält jedoch das dx-Tool zum Übersetzen von Java-Bytecode in Dalvik-Bytecode, weshalb Sie Android-Anwendungen in Java schreiben können.
Wenn Sie " dalvik-cache " sagen , meinen Sie vermutlich das Verzeichnis / data / dalvik-cache , das auf typischen Android-Geräten zu finden ist. Wenn Sie eine Anwendung unter Android installieren, werden einige Änderungen und Optimierungen an der Dex-Datei dieser Anwendung vorgenommen (der Datei, die den gesamten Dalvik-Bytecode für die Anwendung enthält). Anschließend wird die resultierende Odex- Datei ( Optimized Dex ) im Verzeichnis / data / dalvik-cache zwischengespeichert , sodass der Optimierungsprozess nicht jedes Mal ausgeführt werden muss, wenn eine Anwendung geladen wird .
Dalvik ist die Java-basierte virtuelle Maschine, auf der Android Apps auf Android ausgeführt werden. Dalvik-Cache ist der Cache-Bereich für Dalvik VM. Er wird erstellt, wenn die Dalvik VM Ihre App für die Ausführung optimiert.
Sie können im Internet mehr über die Unterschiede zwischen Dalvik VM-Op-Codes und "normalen" Java VM-Op-Codes nachschlagen, wenn Sie möchten.
Dalvik-Caches sind nichts anderes als die temporäre Kompilierung von Anwendungscode, der als ausführbare Dateien gespeichert wird. Da diese dynamisch aus dem ursprünglichen Anwendungscode außerhalb des Dalvik-Cache kompiliert werden können, können Sie den Dalvik-Cache ohne echte Strafe löschen.
Der Dalvik-Cache ist nicht mehr Teil moderner Android-Versionen. Android 4.4 KitKat war das letzte, das diese Konstruktion nutzte. Weitere Informationen finden Sie unter https://en.wikipedia.org/wiki/Dalvik_(software) .