Welcome to the Android technical documentation section of the site. Here you can find technical information useful to people and organizations who are looking to modify, contribute to, or port the Android software. This is "under the hood" information intended for engineers.
The Dalvik Virtual Machine is the heart of Android. It's a fast, just-in-time compiled, optimized bytecode virtual machine. Android applications are compiled to Dalvik bytecode and run on the Dalvik VM. This section includes detailed information such as the Dalvik bytecode format specification, design information on the VM itself, and so on.
The Android Open-Source Project includes a bluetooth subsystem currently based on the upstream bluez project. Android then layers various IPC and similar libraries to link the bluez library with the Android Bluetooth stack and API.
The Android Open-Source Project also includes an NFC implementation. Unlike the Android Bluetooth stack, much of the Android NFC stack is new code originally contributed to the Android Open-Source Project. This code links the Android NFC API to a device's NFC hardware. This section also includes information on related Android technologies, such as the simple NDEF Push Protocol.