Home > BLOG > ANDROID > Android su iPhone 3G: Ecco la guida ufficiale

Android su iPhone 3G: Ecco la guida ufficiale

Qualche settimana fa avevo pubblicato un articolo nel quale illustravo la possibilità di installare Android sui terminali iPhone 2G. Da oggi, grazie allo splendido lavoro di planetbeing, è possibile installare Android 1.6 anche su dispositivi iPhone 3G.

L’intento che mi sono proposto per questo articolo è di tradurre, il più possibile alla lettera, la guida redatta dallo stesso planetbeing e consegnata agli specialisti di Pc World. Se la mia traduzione non dovesse essere molto chiara vi prego di recarvi sul sito di Pc World per prendere visione della guida il lingua inglese. La guida viene pubblicata a titolo puramente informativo e coloro che intendono seguirla si prendono tutte le responsabilità del caso. Informaniaci non si assume alcuna responsabilità sui possibili danni recati dall’utilizzo della guida.

Iniziamo con la Guida:

Attenzione: La guida che segue non è adatta per i deboli di cuore =)

Work in Progress:

Anche se questa guida permette di installare Android su iPhone 3G e di utilizzarlo quasi al pieno delle sue possibilità, Android rimane ancora inutilizzabile per le attività di ogni giorno dato che non è stata attuata alcuna funzione di risparmio energetico, per cui un iPhone completamente carico durerà soltanto un’ora utilizzando Android.

Poichè ancora non sono stati risolti alcuni problemi,  il telefono è lento nel rispondere ai comandi.Se fate qualcosa di inaspettato (come ad esempio forzare lo spegnimento dell’ iPhone), c’è una piccola probabilità che sarà necessaria un ripristino del dispositivo.Tuttavia, nessuno di questi piccoli bug può brickkare o disabilitare il vostro iPhone in modo permanente.

Infine, la sincronizzazione non funziona, quindi caricare i file multimediali sul proprio telefono cellulare è una specie di pena. Planetbeing sta lavorando duramente per risolvere questi piccoli bug.

Una lettura obbligatoria:

Prima di iniziare la guida è necessario avere alcune conoscenze di base sull’ iPhone: come mettere l’iPhone in recovery mode , come metterlo in DFU Mode , e come eseguire un ripristino del firmware da tali modalità.

L’iPhone è un dispositivo ben progettato, ed è praticamente impossibile conseguire un brick del dispositivo se conoscete queste tecniche.  Se la guida non va a buon fine, ricordate che potete sempre ripristinare utilizzando la modalità DFU.

E’ richiesto di saper padroneggiare  una interfaccia a linea di comando ed è necessario un PC con Linux (o uno machina virtuale con Linux).

Lista della spesa:

Vediamo subito di cosa abbiamo bisogno:

  • Un iPhone di prima generazione o di un iPhone 3G con una versione di firmware tra 2.0 e 3.1.2, jailbroken con Redsn0w , Blacksn0w o PwnageTool . If you already updated your handset to 3.1.3 or to a 4.0 beta, you must use PwnageTool to create a jailbroken 3.1.2 .ipsw file to restore down to. Se avete già aggiornato il vostro terminale alla versione 3.1.3 o ad una versione beta del firmware 4.0, è necessario effeuttare un downgrade alla versione 3.1.2. Nota: gli iPhone 3GS , tutti i modelli di  iPod Touch , e l’ iPad sono stati necessariamente esclusi. Questo hack non funziona con i dispositivi sopra citati.  Sono anche espressamente esclusi iPhone OS 3.1.3 e tutti i 4.0 beta. Questo hack non funziona nemmeno con il  jailbreak effettuato da Spirit.
  • Una computer con una versione di Linux a 32 bit preferibilmente Ubuntu. Nella guida in inglese non illustrate anche le motivazioni di questa scelta.
  • Le immagini e file binari precompilati, se siete in possesso di iPhone di prima generazione clicca qui, se invece possedete un iPhone 3Go clicca qui .
  • L’iPhone OS 3.1.2. Ipsw per il vostro dispositivo, vale a dire sia iPhone1, 1_3.1.2_7D11_Restore.ipsw o iPhone1, 2_3.1.2_7D11_Restore.ipsw.  Se non ne siete in possesso potete  scaricarlo qui.
  • Il firmware per il chip Marvell WLAN che sta nell’iPhone. Recarsi sul sito,  sul lato destro della pagina è presenteun menù a discesa con scritto ‘Choose your platform’.  Selezionare Linux 2.6 – Fedora dal menu a discesa e fare clic sul pulsante Search sotto. Scaricare il file  SD-8686-linux26-SYSKT-9.70.3.p24-26409.P45-GPL. Otterrete un file chiamato SD-8686-linux26-SYSKT-9.70.3.p24-26409.P45-GPL.zip.

Android su iPhone, Step-by-Step:

Il primo passo consiste nel raccogliere il firmware per multitouch e WLAN dell’iPhone.  Non si può legalmente ridistribuire questi codici, per cui è necessario estrarli dal file. Ipsw e dal sito della Marvell.

  • Sulla macchina Linux, creare una cartella denominata firmware nella vostra home directory.
  • Estrarre SD-8686-FEDORA26FC6-SYSKT-GPL-9.70.3.p24-26409.P45.tar da SD-8686-linux26-SYSKT-9.70.3.p24-26409.P45-GPL.zip in una cartella temporanea .
  • Estrarre FwImage / helper_sd.bin e FwImage/sd8686.bin da SD-8686-FEDORA26FC6-SYSKT-GPL-9.70.3.p24-26409.P45.tar e metterli dentro la cartella chiamate ‘firmware’.
  • Rinominare helper_sd.bin a sd8686_helper.bin.

Adesso siamo in possesso del firmware WLAN . Ora estraiamo il firmware del multitouch.

  • Sulla macchina Linux, creare una cartella denominata idroid nella vostra home directory ed estrarre la cartella  utils / dripwn dall’archivio  Tar scaricato.
  • Copiare o spostare la 3.1.2. Ipsw file  che si è ottenuto dal sito Web di Apple nella stessa cartella ‘idroid’ come dripwn.
  • Avviare una shell a linea di comando (Terminal sotto Ubuntu) e navigare fino la cartella ‘idroid’ che si è creato precedentemente. È possibile digitare cd ~ / idroid per fare questo.
  • Andare su questa pagina se avete un iPhone 3G o questa pagina se avete un iPhone più vecchio.  Copiare la chiave VFDecrypt.
  • Nella shell avviata in precedenza, se avete un iPhone di prima generazione, digitare il seguente: ./dripwn iPhone1,1_3.1.2_7D11_Restore.ipsw [la chiave VFDecrypt che hai copiato]
  • Se invece avete un iPhone 3G, digitare: ./dripwn iPhone1,2_3.1.2_7D11_Restore.ipsw [la chiave VFDecrypt hai copiato]
  • Dopo un po ‘, il comando finirà e saranno disponibili i file zephyr_main.bin, zephyr_aspeed.bin e zephyr2.bin nella tua cartella’ idroid ‘. Spostare questi file nella ‘firmware’ cartella.

Si dispone ora di tutti i file necessari per Android, e si può iniziare l’installazione di esso.

  • Se non è stato già installato, è necessario installare lo strumento di OpenSSH sul vostro iPhone tramite Cydia.
  • Se avete appena installato OpenSSH, collegatevi al vostro iPhone via SSH, login come ‘root’ con la password alpine e digitare passwd root per modificare la password di root. Quindi, inserire mobile passwd per cambiare la password per l’utente mobile. Non saltare questo passaggio.  Tutti gli iPhone worms possono infettarti solo se non è stata cambiata la password SSH  predefinita.
  • Estrarre prebuilt/android.img.gz, prebuilt/cache.img, prebuilt/ramdisk.img, prebuilt/system.img, prebuilt/userdata.img, e zImage dall’archivio tar.
  • Utilizzare il comando ‘scp o un client SFTP per caricare tutti questi file nella cartella /private/var  su iPhone. È possibile utilizzare questi comandi su Linux, se si desidera utilizzare scp invece di un client SFTP grafico-interfaccia. Supponendo che siete nella stessa cartella dei file, digitare:                                                                               scp android.img.gz root@[indirizzo ip dell’ iPhone]:/private/var/
    scp cache.img root@[
    indirizzo ip dell’ iPhone]:/private/var/
    scp ramdisk.img root@[
    indirizzo ip dell’ iPhone]:/private/var/
    scp system.img root@[
    indirizzo ip dell’ iPhone]:/private/var/
    scp userdata.img root@[
    indirizzo ip dell’ iPhone]:/private/var/
    scp zImage root@[
    indirizzo ip dell’ iPhone]:/private/var/
  • Utilizzando il client SFTP o il comando SCP, creare una cartella chiamata firmware in /private/var su iPhone, poi, caricare tutti i file dalla cartella ‘firmware’  creata in precedenza su essa. Se la cartella ‘firmware’ creata in precedenza è all’interno della vostra cartella home, è possibile utilizzare il seguente comando: scp -r ~/firmware/ root@ [indirizzo ip dell’ iPhone] :/private/var/firmware
  • Riavviate il vostro iPhone. Come precauzione di sicurezza, controllare che i file siano ancora presenti dopo il riavvio, e che tutti abbiano le dimensioni giuste .  Dire che la dimensione non è giusta vuol dire che il file non presenta le stesse dimensione del file originale (per esempio, system.img non è 71.327.744 byte, android.img.gz non è 2.161.556 byte, o zImage non è 2.364.280 byte su 3G o 2.356.044 su iPhone 2G).

Molte persone hanno problemi con questa procedura perché non tutti i file che hanno raggiunto il loro iPhone  sono integri.

  • Estrarre utils/oibc, utils/loadibec, eprebuilt/openiboot.img3 dall’archivio tar nella vostra cartella ‘idroid’.
  • Spegnere l’iPhone e mandarlo in Recovery Mode: con l’iPhone spento e collegato al computer via USB, premere Hold e Home contemporaneamente, e poi lasciar andare Hold dopo che la retroilluminazione si accende. Continue holding Home until the ‘Connect to iTunes’ image appears on the screen. Continuare a tenere premuto Home fino a quando l’immagine  ‘Connect to iTunes’ viene visualizzata sullo schermo.
  • Eseguire i seguenti comandi nel terminale (è necessario installare libusb-0.1-4 con Synaptics o ‘apt-get’ se non è già stato fatto):                                                                                                                                                                                                   cd ~/idroid sudo ./loadibec openiboot.img3

Se tutto è andato bene, il menu di boot ‘openiboot’ dovrebbe ora apparire!

  • Utilizzare i pulsanti di controllo volume e il pulsante Hold per selezionare la seconda opzione del menu, Console. Premere il tasto Home per lanciarlo. A text mode console  dovrebbe andare in esecuzione sul vostro schermo, per finire col messaggio ‘Welcome to openiboot’.
  • Digitare sudo ./oibc nel terminale.

Gli stessi messaggi che apparivano sullo schermo iPhone dovrebbe ora apparire nel terminale. Si deve poi fare un backup del NOR (il dispositivo su cui è memorizzato il bootloader di iPhone) in caso qualcosa vada storto, in modo da non incorrere in un brick del vostro iPhone

  • Digitare  nor_read 0x09000000 0x0 1048576 Terminal/oibc.  Questo permette di leggere l’intero NOR nella memoria principale.
  • Digitare ~norbackup.bin@0x09000000:1048576 in Terminal/oibc. A file will appear in the ‘idroid’ folder called norbackup.bin. Un file chiamato norbackup.bin apparirà nella cartella ‘idroid’. Tenere questo in qualche luogo sicuro.

Il comando carica il NOR nel computer.  Dopo aver effettuato il backup, ora è possibile modificare il NOR. Il prossimo passo sarà installare OpeniBoot sul NOR, soppiantando l’attuale bootloader iBoot Apple.

  • Digitare install in Terminal/oibc.

Questo processo può richiedere alcuni minuti.  Attendere che il messaggio di installazione completata appaia.

  • Digitare reboot del Terminal/oibc e quindi uscire da esso premendo Ctrl-C.

Il menu OpeniBoot dovrebbe venire ogni volta che si avvia il vostro iPhone. Si noti che è possibile disinstallare OpeniBoot da oibc con il comando ‘Uninstall’. Type help for a list of all OpeniBoot commands. Digitare help per visualizzare una lista di tutti i comandi OpeniBoot.

È ancora possibile entrare recovery mode dell’ iPhone Os tenendo premuto Home dalla scelta del sistema operativo iPhone OS  fino a quando non appare l’immagine  ‘Connect to iTunes’.

Dovremmo aver finito!  Utilizzare il menu OpeniBoot per lanciare Android OS,  selezionandolo ogni volta che si desidera. Purtroppo, non esiste ancora un buon metodo per arrestare Android, quindi l’unico modo per spegnerlo è quello di tenere premuti i pulsanti Hold e Home fino  il telefono cellulare si spegne.

Per avere maggiori potere recarvi su  iDroidWiki. Si rigrazia David Wang, in arte “planetbeing” per lo splendido lavoro


Termini di ricerca frequenti:

  • Ho tutto tranne l’iPhone.
    Volevo cimentarmi nell’impresa con un iPod Touch ma ho visto che ci sono pacchetti specifici per ogni device…


    …aspetto con impazienza quella per l’iPod: almeno so cosa farmene 😀 .
    Ciao!
    ! :) !

  • @lupoalberto12: speriamo che arrivi presto =)

  • Secondo me è uno spreco mettere Android su iPhone…l’hardwere degli ultimi smartphone è nettamente superiore ad iPhone e di prezzo stiamo lì. A questo punto o uno si tiene l’iPhone com’è e utilizza il suo sistema operativo che sfrutta l’hardwere al 100% oppure se vuole Android conviene comprarsi uno smartphone con l’ OS di serie e spendere meno.

  • PS: ho un bellissimo Androide consigliatomi dal Dottore e non lo cambierei con nessun iPhone…quando uscirà quello nuovo ne riparleremo :)

  • @ cicileum:
    io ho un bellissimo Symbian (S60 3rd) 😀 .

    Purtroppo fu preso dall’entusiasmo del momento e comprai l’iPod Touch 2G…
    …peccato che l’entusiasmo è durato solo tre mesi (il cui valore dell’iPod, immacolato, è sceso al di sotto della metà).
    Visto che muoio dalla curiosità di conoscere Android almeno lo sfrutto per questo (l’iPod).
    Ecco la mia motivazione.
    Ciao!
    ! :) !

  • iL Dottore

    @ cicileum:

    Lo sai che a Publicenemy piace smanettare con qualsiasi device, quando è uscito il pacchetto di compatibilità di Android con iPhone non ha resistito 😀

    Comunque caro cicileum quando uscirà l’iPhone nuovo ti prenderai il mio Desire così lo proverò 😀

  • Lenny1176

    non fatelo e' lentissimo e poco funzionale. solo se vi eccita vedere i menu e le icone dei normali telefoni tipo nokia ecc su iphone.