ה-Dalvik Virtual Machine שפותח כחלק ממערכת ההפעלה Android
כאשר פיתחו את מערכת ההפעלה Android (הפיתוח החל בשנה 2003) החליטו שהשפה שבה יפתחו אפליקציות למערכת ההפעלה Android תהיה שפת התכנות Java. כדי להתמודד בהצלחה עם מגבלות כוח המיחשוב שקיימות במכשירים יחסית קטנים (כגון טלפונים סלולריים) הוחלט לפתח את ה-Dalvik Virtual Machine כחלק ממערכת ההפעלה, ולהוסיף לשלב הפיתוח של אפליקציות ב-Java שלב נוסף שבו קבצי ה-Java Bytecode יעברו תרגום ל-Dalvik Bytecode. קבצי ה-Dalvik Bytecode ירוצו על גבי ה-Dalvik Virtual Machine. באותה עת, הוחלט שה-API של מערכת ההפעלה Android יהיה גם הוא ב-Java. עם הופעת Android 4.4 ה-Dalvik Virtual Machine כבר לא קיים. במקומו קיים virtual machine אחר. ה-Dalvik Bytecode שמגיע למערכת ההפעלה Android כאשר מתקינים אפליקציה עובר תרגום ל-bytecode אחר, אשר מתאים ל-virtual machine שהחליף את ה-Dalvik Virtual Machine. ה-API של מערכת ההפעלה Android המשיך להיות ב-Java.
המעבר משפת התיכנות Java לשפת התיכנות Kotlin
כאשר התקבלה ההחלטה לעבור מפיתוח לאנדרואיד בשפת התיכנות Java לשפת התיכנות Kotlin, הוחלט שכיוון שקוד ב-Kotlin יכול לעבור הידור ל-Java Bytecode ללא שום קושי, ה-API הקיים יעבור תירגום מ-Java ל-Kotlin, ולמפתחים תהיה אפשרות לצפות ב-API הקיים הן כ-API ב-Java והן כ-API ב-Kotlin. כיום ניתן לפתח אפליקציה למערכת ההפעלה Android הן ב-Java והן ב-Kotlin.