Thursday, January 19, 2012

[Guide] How to install Android 2.2 on iPhone 3G


Apple's iOS gets most of your tasks done easily. But have you ever found yourself wondering how it would be on the other side of the fence in the Android Camp? You can now try it out by install Android on your iPhone 3G.

The guide comes courtesy of Rio*Leo and will show you how to install  on your Apple iPhone 3G running iOS 3.1.3 running baseband 05.12.01


General Steps
  1. Jailbreak your iPhone
  2. Setup a Linux environment
  3. Load Android image files and firmware
  4. Install openiBoot
  5. Start Android (& enjoy)
Estimated Time - 1 Hour

JAILBREAK YOUR IPHONE
  1. I had my iPhone jailbroken with blackra1n and it kept on hanging at “radio: reading baseband nvram… done”. I was able to fix this by restoring up to 3.1.3 and jailbreaking with Redsn0w 0.9.4 using a firmware file for the 3G at 3.1.2.
  2. Install OpenSSH using Cydia.
HOW TO SET UP A LINUX ENVIRONMENT
  1. Download the Ubuntu 9.1 image for Virtual Box, codenamed Karmic Koala, here
  2. Download VirtualBox here.
  3. Install Virtual Box. Set up a new Virtual Machine using the Wizard, with OS Type Ubuntu and select the image you just downloaded. Let’s start Ubuntu up! The default password is reverse
  4. Go to System > Administration > Synaptic Package Manager and install (or make sure you have installed) libsub-1.0-0, libssl-dev and libreadline6.
LOAD ANDROID FILES
  1. The images I had most success with were the ones found here.
  2. Untar the folder using something like 7-Zip or Winrar.
  3. Download and install FileZilla. This apparently is more reliable than WinSCP.
  4. Set your iPhone’s auto-lock to “Never” for now.
  5. SSH to your iPhone from FileZilla and navigate to your root folder (up a few folders) (see this if you don’t know how). Sometimes this may take several tries.
  6. Copy all the files from the images archive folder to /private/var
  7. Copy all of the files in this archive to a new folder called “firmware” (note lowercase) on /private/var
  8. Make sure all of the files have 777 permissions. The files are big - make sure all of them copied without problems (see screenshot below for comparison).
LOAD OPENIBOOT
  1. Download this file (16.7MB) onto your Ubuntu machine and unzip to your Desktop.
  2. On your Windows machine, go to Task Manager and disable iTunesHelper.
  3. Put your iPhone into Recovery mode by powering the iPhone down, unplugging your iPhone, holding the iPhone Home button while you plug in.
  4. Go to your VirtualBox window and select “Devices” from the menu area, then “USB Devices” - you should see “Apple iPhone (Recovery Mode)” available. Select it.
  5. Navigate to wherever you unzipped the files like so:
    cd Desktop cd 3g cd openiBoot
    sudo ./client/loadibec openiboot.img3 
    When it asks for[sudo] password for ubuntu: 
    type in “reverse”
  6. At this point your iPhone should flicker and show the OpeniBoot screen.
  7.  Use the Power button to navigate to the Console logo (the second one) and press the Home button. At the end of some script lines you should see “Welcome to Open iBoot”.
  8. Going back to your VirtualBox Devices » USB Devices menu, select the new “Apple iPhone (Open iBoot Mode)”.
  9. Go back to your openiBoot folder using the same steps as #5. Then run:
    sudo ./client/oibcYour Terminal should now show what your iPhone displays (something along the lines of “USB change 2-> 3″).
  10. Type “install”. Once it says “Images installed”, you’re done. Type “reboot”.
  11. Using the Power button, navigate to your Android icon!
Voila! You have successfully installed Android 2.2 Froyo on iPhone 3G.

Disclaimer: this guide is for educational purposes only. The author will not be held liable for any unexpected behavior that ensues as a result of following these instructions.

If you have any questions or come across any issues, let me know and i will try my best to help you out. All credit to this guide belongs solely to it's author. However feel free to discuss your experiences below.
Anonymous Web Developer

Morbi aliquam fringilla nisl. Pellentesque eleifend condimentum tellus, vel vulputate tortor malesuada sit amet. Aliquam vel vestibulum metus. Aenean ut mi aucto.