Android uses Dalvik Virtual Machine (DVM) which requires a special bytecode format called .dex files. The DVM executes multiple virtual machines efficiently and runs Java bytecode, converting it to .dex format. Activities dictate the user interface and handle interactions, services handle background processes, broadcast receivers handle communication between apps and the OS, and content providers manage data storage. The Android SDK includes tools like the emulator, DDMS, and ADB for app development.