Java sadece Android geliştirme için desteklenen bir dildir. Google, Java dili için ve SDK'yı ve popüler Eclipse Java IDE için bir Eklenti oluşturmayı seçti, bu nedenle popüler bir dilde Android uygulamaları oluşturmak için kolayca kullanılabilen bir araç seti vardı.
Burada kafa karıştırıcı olan bölüm, Java dili ve sanal makine Java iki farklı şeydir. PC'nizde standart bir Java programı çalıştığında, Sun Microsystems Java Sanal Makinesi'nde çalıştırılmak üzere bayt koduna derlenmiş kod çalıştırıyor. Temel olarak Android, bayt kodunu çalıştıran kendi sanal makinesine sahiptir. Android uygulamasını çalıştırdığınızda, Android sanal makinesinin anladığı bayt kodunda derlenen çalışan kodu. Bu nedenle, Java tercih edilen dil olsa da, Android bayt koduna derleme araçlarına sahip olmanız şartıyla teknik olarak herhangi bir dilde android uygulamaları yazabilirsiniz. (Diğer diller için herhangi bir araç bulunmadığını düşünmeme rağmen)