Android uygulamaları Java uygulamalarıdır.
Java uygulamaları, bilgisayarlarda olduğu gibi Android'de de işletim sistemine özelleştirilmiş olan bir "Java Sanal Makinesi" üzerinde (JVM) çalışır. Android cihazlarda, bu JVM sanal makinenin, ART adındaki sürümü kullanılır. (Eski Androidlerde bu, Dalvik idi)
JDK, Java geliştirme kitidir. Görevi; yazılan Java kodlarının, çalıştırılabilir hale getirilmesidir.
Android SDK, Android yazılım geliştirme kitidir. Android uygulamaları geliştirme kütüphanelerini ve birçok aracı içerir. Bu araçlar, cihazın sensörlerine yazılım ile ulaşmayı sağlayan kütüphaneleri sunmaktan; uygulamanın test edilmek için USB ile Android cihaza yüklenmesine kadar birçok işi yapabilir.
Ayrıca Android NDK vardır. Androidin doğal Java yazılım ortamı içinden, C/C++ kod ve kütüphanelerini, sınırlı olarak da olsa; kullanmayı sağlar. Ek olarak yüksek performans gerektiren, yoğun matematik işlemler için de tercih edilir.
Bir de; C/C++ ürünü NDK'nın, Java ürünü SDK ile köprü kurmasını sağlayan JNI var. Bu 3 harflilerin sonu gelmez.
Özetle JDK ve Android SDK, geliştirme kitleridir. IDE değildirler.
IDE, kanat takmış notpad'ler gibi düşünülebilir. IDE'ler geliştiricinin, editörün dışına çıkmadan ve hızlı bir şekilde yazılımı tamamlamasına yetecek araçları sunar. (Ör. Android Studio, Eclipse, Visual Studio)