The iDroid project aims to allow Android to be installed on a few of Apple's devices that support Openiboot, a collection of drivers that allow the Linux kernel to be run on Apple hardware. 

 Supported Devices
 You can install Android on the following iOS devices on firmware 3.1.2 ONLY:
·          1st Generation iPod touch
·          1st Generation iPhone
·          iPhone 3G (and on firmware 4.0)

 You cannot install Android on the following iOS devices:
·          1st Generation iPad
·          2nd Generation iPod  touch (neither MB nor MC devices)
·          3rd Generation iPod touch
·          iPhone 3GS
·          iPhone 4



What Works
Depending on the Android version and which build you are using, a variety of things may not work properly. It is best to follow the developer and read the thread comments to troubleshoot any problems you may have. A full spreadsheet of what works on each device can be found at the iDroidWiki.

Installation

First generation iPhone (2G)

Mac users can use iPhodroid, which automates the process and only takes a few minutes and has no complicated commands.

iPhone 3G

Using a Ubuntu Linux Virtual Machine 
Froyo can also be installed with various iDroid builds. 

First generation iPod Touch

Froyo: Early beta, extremely buggy, not much works.

iDroid: Sense widgets, GPU, WiFi, and many other features work.