正文  软件开发 > ROM制作/刷机/解锁 >

教你在iPhone上安装Android系统

本文是教各位如何安装谷歌的Android操作系统到iPhone上。事先警告,动手能力不强,不喜欢折腾的同学还是不要试了。也许你想过让iPhone逃出苹果的魔爪。也许你只是尝试下新东西。无论基于哪种想法,你已经看过关于......

本文是教各位如何安装谷歌的Android操作系统到iPhone上。事先警告,动手能力不强,不喜欢折腾的同学还是不要试了。

也许你想过让iPhone逃出苹果的魔爪。也许你只是尝试下新东西。无论基于哪种想法,你已经看过关于iPhone安装Android系 统的文章了,你现在想自己来试试。

目前还不完善

17283801880316592

虽然装了Android系统后可以实现智能手机的大部分功能,但是目前还不能满足日常的使用。我还没有完成电源管理功能,所以现在安装 Android的 iPhone显示充满电只要一个多小时。

现在还有一些Bug和性能问题,所以手机可以用,但速度不会很快。如果做些非常 规操作(比如强行关闭iPhone),那就很有可能不能恢复系统。但不管 怎么样,任何Bug都不会让你的iPhone变砖或永久损坏你的iPhone。

最后还要提醒,媒体同步还不能用,因此下载媒体文件到手机会是件很痛苦的事。我尽可能的在拼命工作,希望能尽快解决这些问题。

刷机前必读

首先要了解iPhone的一些基本的刷机概念:怎样让iPhone进入恢复模式,怎样进入DFU模式,还有如何在这些模式 下恢复固件。

iPhone是一部工程设计极佳的机器,如果你知道这些概念,那不大可能让它变砖。如果所有方法都失败了,你要记住总是可以 在DFU模式下恢复固件。

除非你对自己编译二进制文件的本领很有信息,否则你还需要熟悉命令行界面的操作,另外还需要一台运行Linux 系统的PC机(或是在虚拟机上运行的 Linux)。

刷机所需

17283911208004578

1、第一代iPhone或是iPhone 3G,固件版本在2.0和 3.1.2之 间,已用Redsn0w、Blacksn0w或PwnageTool越狱。如果已经更新固件版本到3.1.3或4.0测试版,那必须使用 Pwnagetool创建越狱3.1.2.ipsw文件降级。

要注意iPhone 3GS、所有iPod Touch版本以及ipad是被排除在外的Android现在还不能装在这些设备上。我也很明确地排除iPhone OS 3.1.3和所有4.0测试版。用Spirit越狱的版本也不行。

如果你的iPhone还没有越狱,不用担心 – 过程很简单,只要在向导中不停的按“下一步”就可以。我建议使用Redsn0w , 因为大部分源代码都是我写的。

2、 32位的Liunx操作系统或虚拟机(我推荐Ubuntu)。如果没装过Ubuntu,请参见相 关教程

虽然大部分步骤可以再任何操作系统上完成,但是某个工具(名叫oibc)还没有Windows版本此外,我提供的可执行文件是在 32位Ubuntu上编译 的。

所有的文件都是为Linux和Mac系统编译的,不过如果你极具冒险精神,可以到 github.com/planetbeing /iphonelinux和github.com/planetbeing/xpwn下载源代码自行编译,而不是用现成的可执行文件。

3、预 编译镜像和二进制文件:确切该用哪个文件取决于你手上的iPhone是第一代的还是3G的。

4、 需要iPhone OS 3.1.2 ipsw文件,又叫做iPhone1,1_3.1.2_7D11_Restore.ipsw或 iPhone1.2_3.1.2_7D11_Restore.ipsw。电脑里一定要有这么个文件

5、iPhone 内部Marvell WLAN芯片的固件。去Marvell的网站,并在页面右边你会看到一个下拉菜单”选择您的平台”。下拉菜单中选Linux 2.6 – Fedora,然后点下面的“搜索”下载SD-8686-LINUX26-SYSKT-9.70.3.p24-26409.P45-GPL,你会得到一个 名为SD-8686-LINUX26-SYSKT-9.70.3.p24-26409.P45-GPL.zip的文件。

在iPhone安装Android系统的详细步骤

首先,准备好iPhone的多点触屏和WLAN固件。因为法律的缘故,我们不能分享 这些文件,你可以去ipsw文件里提取或去Marvell网站下载。

1、在Linux的Home目录 下创建一个名为fireware的目录。

2、 从SD-8686-LINUX26-SYSKT-9.70.3.p24-26409.P45-GPL.zip中解压SD-8686- FEDORA26FC6-SYSKT-GPL-9.70.3.p24-26409.P45.tar到临时目录。。

3、从SD-8686-FEDORA26FC6-SYSKT-GPL- 9.70.3.p24-26409.P45.tar中解压出FwImage/helper_sd.bin和FwImage/sd8686.bin并放到 firmware目录下。

4、将helper_sd.bin重命名为sd8686_helper.bin。

现在你已经有了WLAN固件,下一步是多点触屏固件。

5、在Linux中,在 Home目录下创建一个名为idroid的文件夹,并从先 前那个tar文件中提取utils/dripwn。

6、复制或移动你从苹果网站得来的3.1.2.ipsw文件到idroid的dripwn文件夹中。

7、启动命令行(Ubuntu的终端),然后进入idroid文件夹。你可以键入cd ~/idroid。

8、如果你手上的是iPhone 3G版本,进这 个网页,如果是第一代iPhone 3G或进这 个网页。复制VFDecrypt key。

9、在命令行中,如果是第一代iPhone,键 入以下内容:

./dripwn iPhone1,1_3.1.2_7D11_Restore.ipsw [你拷贝来的VFDecrypt key ]

如果是iPhone 3G,键入以下内容:

./dripwn iPhone1,2_3.1.2_7D11_Restore.ipsw [你拷贝来的VFDecrypt key]

17284021132056010

10、 等一会儿,该命令执行完,在idroid文件夹下,你会得到zephyr_main.bin,zephyr_aspeed.bin和 zephyr2.bin三个文件。把他们移动到firmware文件夹下。

现在Android所需的文件都齐了,可以开始安装了。

11、没安装OpenSSH的话,要先安装,可以通过Cydia安装。

172840337048920

12。 如果安装了OpenSSH,通过SSH连接iPhone,用密码alpine登录,键入passwd root来改变根用户的密码,然后键入passwd mobile来改变移动用户的密码。

不要跳过这一步。如果没有改变SSH的默认密码,所有的iPhone蠕虫病毒都可以感染你的机子。

13、 从先前的tar文件中提取prebuilt/android.img.gz,prebuilt/cache.img,prebuilt /ramdisk.img,prebuilt/system.img,prebuilt/userdata.img和zImage。

1728414860819579

14。 使用’SCP命令或SFTP客户端将所有这些文件上传到iPhone里的/private/var目录。

你可以在Linux 上使用这些命令,如果你想使用scp而不是SFTP的图形界面的客户端。假设你在这些文件所在的文件夹中,输入:

scp android.img.gz root@[ip address of iPhone]:/private/var/

scp cache.img root@[ip address of iPhone]:/private/var/

scp ramdisk.img root@[ip address of iPhone]:/private/var/

scp system.img root@[ip address of iPhone]:/private/var/

scp userdata.img root@[ip address of iPhone]:/private/var/

scp zImage root@[ip address of iPhone]:/private/var/

15。 使用SFTP客户或scp,在iPhone的/private/var上创建一个名为firmware的文件 夹,然后把电脑里firmware里的文件全部拷贝进来。

你可以使用以下命令:

scp -r ~/firmware/ root@[ip address of iPhone]:/private/var/firmware

Android在iPhone续,

16、 重启iPhone。为安全起见,请检查以确保各文件在重新启动后还在,尺寸大小也没变。

17、 从先前tar文件中提取utils/oibc,utils/loadibec和prebuilt/openiboot.img3释放到 idroid目录下。

18、 关闭iPhone,进入恢复模式:iPhone过程中,将iPhone通过USB连接计算机,同时按住Hold和Home键, 等背光亮起后,松开Hold键,直到出现Connect to iTunes,再松开Home键。

19、 在终端中运行下面的命令:

cd ~/idroid

sudo ./loadibec openiboot.img3

如果一切顺利的话,’openiboot’启动菜单应该出现!

1728415409232902

20、 请使用音量控制按钮或Hold键选择第二个菜单选项,按Home键选中。

文本模式的控制台应该会在屏幕上运行,末尾有 Welcome to openiboot的信息。

21、 在终端中键入sudo ./oibc

在iPhone中出现的信息,同样也出现在了电脑的终端中。您接下来应该备份NOR(在其上iPhone的引导程序是存储设备的情况下),防 止你的 iPhone变砖。

22、在终端/oibc下键入nor_read 0×09000000 0×0 1048576这 会将整个NOR读入主内存。

23、 在终端/oibc中~norbackup.bin@0×09000000:1048576,在idroid目录下会生成一个 norbackup.bin的文件,保存好。

该命令是将NOR上传到计算机中。做好备份后,你现在可以自由修改NOR。下一步安装 OpeniBoot到NOR,取代现有的苹果iBoot Bootloader。

24、 在终端/oibc下键入install

这 个过程可能需要几分钟。等到安装,完整的消息出现。

17284261590413431

25、 在终端/oibc中键入reboot,然后按Ctrl+C退出。

每次iPhone启动都会出现这个OpeniBoot菜单。注意,你可以卸载OpeniBoot,在oibc下用uninstall命令。 键入Help可 以得到帮助

你现在仍然在iPhone OS选项菜单下按下Home, 直到出现Connect to iTunes画面,来进入恢复模式(不用按住Home键了)。

完成 了!使用OpeniBoot来选择引导Android系统。不过现在没办法正常关闭Android系统,只有同时按住Hold和Home强行关闭手 机。