文档章节

iPhone上安装Android系统详细步骤

 张淑珍
发布于 2013/03/29 14:57
字数 2223
阅读 1372
收藏 28
本文是教各位如何安装 谷歌的Android操作系统到iPhone上。事先警告,动手能力不强,不喜欢折腾的同学还是不要试了。
也许你想过让iPhone逃出苹果的魔爪。也许你只是尝试下新东西。无论基于哪种想法,你已经看过关于iPhone安装Android系统的文章 了,你现在想自己来试试。

目前还不完善



    虽然装了Android系统后可以实现智能 手机的大部分功能,但是目前还不能满足日常的使用。我还没有完成电源管理功能,所以现在安装Android的iPhone显示充满电只要一个多小时。
    现在还有一些Bug和性能问题,所以手机可以用,但速度不会很快。如果做些非常规操作(比如强行关闭iPhone),那就很有可能不能恢复系统。但不管怎么样,任何Bug都不会让你的iPhone变砖或永久损坏你的iPhone。
    最后还要提醒,媒体同步还不能用 甲亢,因此下载媒体文件到手机会是件很痛苦的事。我尽可能的在拼命工作,希望能尽快解决这些问题。

刷机前必读
    首先要了解iPhone的一些基本的刷机概念:怎样让iPhone进入恢复模式,怎样进入DFU模式,还有如何在这些模式下恢复固件。
    iPhone是一部工程设计极佳的机器,如果你知道这些概念,那不大可能让它变砖。如果所有方法都失败了,你要记住总是可以在DFU模式下恢复固件。
    除非你对自己编译二进制文件的本领很有信息,否则你还需要熟悉命令行界面的操作,另外还需要一台运行Linux系统的PC机(或是在虚拟机上运行的Linux)。

刷机所需


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]


10、等一会儿,该命令执行完,在idroid文件夹下,你会得到zephyr_main.bin,zephyr_aspeed.bin和zephyr2.bin三个文件。把他们移动到firmware文件夹下。
现在Android所需的文件都齐了,可以开始安装了。
11、没安装OpenSSH的话,要先安装 455,可以通过Cydia安装。


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。


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'启动菜单应该出现!


20、 请使用音量控制按钮或Hold键选择第二个菜单选项,按Home键选中。
文本模式的控制台应该会在屏幕上运行,末尾有Welcome to openiboot的信息。
21、 在终端中键入sudo ./oibc
在iPhone中出现的信息,同样也出现在了电脑的终端中。您接下来应该备份NOR(在其上iPhone的引导程序是存储设备的情况下),防止你的iPhone变砖。
22、在终端/oibc下键入nor_read 0x09000000 0x0 1048576这会将整个NOR读入主内存。
23、 在终端/oibc中~norbackup.bin@0x09000000:1048576,在idroid目录下会生成一个norbackup.bin的文件,保存好。
该命令是将NOR上传到计算机中。做好备份后,你现在可以自由修改NOR。下一步安装OpeniBoot到NOR,取代现有的苹果iBoot Bootloader。
24、 在终端/oibc下键入install
这个过程可能需要几分钟。等到安装 甲亢,完整的消息出现。



25、 在终端/oibc中键入reboot,然后按Ctrl+C退出。
每次iPhone启动都会出现这个OpeniBoot菜单。注意,你可以卸载OpeniBoot,在oibc下用uninstall命令。键入Help可以得到帮助
你现在仍然在iPhone OS选项菜单下按下Home,直到出现Connect to iTunes画面,来进入恢复模式(不用按住Home键了)。
完成了!使用OpeniBoot来选择引导Android系统。不过现在没办法正常关闭Android系统,只有同时按住Hold和Home强行关闭手机。

© 著作权归作者所有

共有 人打赏支持
粉丝 2
博文 3
码字总数 4233
作品 0
崇明
私信 提问
加载中

评论(6)

gaubee
gaubee
哦呵呵,意义何在?
yuyuyuyu
yuyuyuyu
厉害,说不定下个jobs 马克一下
鞋底两万里
鞋底两万里
山寨iphone便宜又好用…不要费劲了。
刀哥
刀哥
闲的蛋疼。。。
k
karlcoder
二十块钱你帮我把iphone刷成安卓吧,连个lbe安全大师这样的软件都没
铂金小鬼
铂金小鬼
折腾啊
Windows Mobile程序员玩转Android开发

现在的智能手机操作系统已经进入战国时代,老牌的Symbian、Windows Mobile和BREW面临着iPhone和Android等新势力的巨大挑战。最近有些闲暇时间了,可以研究下新手机操作系统的应用程序开发了。...

红薯
2009/06/29
9.8K
3
教你如何在iPhone上安装Android系统

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

鉴客
2010/05/24
5.2K
1
程序员破解iPhone:成功安装Android系统

北京时间4月23日上午消息,据国外媒体昨日报道,一位.Net和Android应用开发者成功将谷歌(Google)Android手机系统安装到苹果iPhone上,并能正常进行网络浏览、收发短信和接打电话等普通操作。...

喀纳斯自由软件专卖店
2010/04/23
983
0
美博客列iOS不具备的10大Android系统功能

导语:美国科技博客LifeHacker周六刊文称,Android和iOS都是用户喜爱的操作系统,但是由于开放特性,Android系统的一些功能是iPhone所没有的。该博客列出了iPhone不具备的10大Android系统功能...

红薯
2011/05/16
471
2
谷歌董事长发帖指导iPhone用户如何改用Android

谷歌董事长埃里克·施密特(Eric Schmidt)周一在其Google+页面上发布帖子,列出了详细的步骤来指导智能手机用户从苹果iPhone改用Android手机,这意味着两家公司之间的竞争进一步升级。 从帖...

oschina
2013/11/26
4.2K
18

没有更多内容

加载失败,请刷新页面

加载更多

前嗅ForeSpider脚本教程:标准对象(一)

今天,小编主要为大家介绍一下:前嗅ForeSpider脚本中的标准对象:爬虫链接类url,urltext采集的所有状态及属性类,html标签节点类domItem和(html)dom类dom。具体内容如下: 一.爬虫链接类...

forespider
27分钟前
1
0
javax.net.ssl.SSLException: closing inbound before receiving peer's close_notify

在使用spring boot整合jpa时出现上述错误,在配置文件中,配置连接数据库的url时,加上useSSL=false url: jdbc:mysql://127.0.0.1:3306/数据库名称?serverTimezone=Asia/Shanghai&useSSL=fa...

朝如青丝暮成雪
36分钟前
1
0
JavaScript 为什么要有 Symbol 类型?

摘要: 为什么比怎么用更有意义。 原文:JavaScript 为什么要有 Symbol 类型 作者:前端小智 Symbols 是 ES6 引入了一个新的数据类型 ,它为 JS 带来了一些好处,尤其是对象属性时。 但是,它...

Fundebug
38分钟前
0
0
vs code 配置.json文件引入makefile文件实现多文件编译

背景: 之前使用VS code写c++时,没使用到多文件,所以对launch.jason和task.jason配置没过多配置,但不支持多文件间的编译,调试。 注:主要针对较大的一些工程,涉及多个文件的编译,使用到...

shzwork
39分钟前
1
0
大神教你Nginx常用基础配置方案

Nginx的fastcgi模块参数设置 Nginx 有两个配置文件fastcgi_params、fastcgi.conf,两者唯一的区别是,fastcgi.conf 多一个参数 SCRIPT_FILENAME,diff显示如下: $diff fastcgi fastcgi_param...

Linux就该这么学
45分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部