这页补充主页关于个人设备的构建细节。
支持当前发布的设备是 Galaxy Nexus,Motorola Xoom,Nexus S 和 Nexus S 4G。
Galaxy Nexus 支持仅仅 GSM/HSPA+ 配置 "maguro" 和仅仅假如它是最初出售的 "yakju" 或 "takju"操作系统。
Motorola Xoom 支持在 USA 出售的 Wi-fi 配置 "wingray"。
Nexus S 支持所有配置。Nexus S 4G 是被支持的。
另外,PandaBoard a.k.a. "panda" 仅仅支持主分支,但是当前认为实验。细节描述用一个 PandaBoard 使用 Android 开源项目在源树文件 device/ti/panda/README
。
Nexus One a.k.a. "passion" 是过时的,是实验在 gingerbread 并且不被支持,不能用 Android 开源项目的新版本。
Android 开发者电话 (ADP1 和 ADP2, a.k.a. "dream" 和 "sapphire") 是过时的,实验和不被支持在 froyo,并且不能用 Android 开源项目的新版本。
在 Android 开源项目,没有 CDMA 设备是被支持的。
假如你不是已经有这些工具,fastboot 和 adb 能被构建用合格构建系统。这页下面的介绍关于构建,和替换主 make
命令用
$ make fastboot adb
一个冷开机期间,下面的键组合能被用来开机到 fastboot 模式,bootloader 的一个模式能被用来烧写设备:
设备 | 键 |
---|---|
maguro | 按下和保持两者音量上和音量下,然后按下和保持电源 |
panda | 按下和保持输入,然后按电源 |
wingray | 按下和保持音量下, 然后按下和保持电源 |
crespo | 按下和保持音量上, 然后按下和保持电源 |
passion | 按下和保持轨迹球,然后按电源 |
sapphire | 按下和保持返回,然后按电源 |
dream | 按下和保持返回,然后按电源 |
还有,在设备运行 froyo 或后来的,adb 是使能的,命令 adb reboot bootloader
能被用来重启从 Android 直接到 bootloader 里面不用键组合。
仅仅可能烧写一个定制系统,假如引导程序允许它。
这是默认设置在 ADP1 和 ADP2。
在 Nexus One,Nexus S,Nexus S 4G,Xoom,和 Galaxy Nexus 上,引导程序默认是锁的。设备进入 fastboot 模式,引导程序解锁用
$ fastboot oem unlock
过程必须被确认在屏幕上,并且删除用户数据因为隐私的原因。它仅仅需要被运行一次。
注意在 Nexus S,Nexus S 4G,Motorola Xoom 和 Galaxy Nexus 上,所有电话上的数据被擦除。即包括应用的私有数据和访问过 USB的共享数据,包括照片和视频。确认制作一个任意珍贵文件的备份,在你解锁 bootloader 前。
在 Nexus One 上,这个行为使保修无效并且是不可逆的。
在 Nexus S,Nexus S 4G,Xoom,和 Galaxy Nexus 上,引导程序能被锁回用
$ fastboot oem lock
注意,这是擦除用户的数据在 Xoom 上(包括共享 USB 数据)。
开始 IceCreamSandwich,the Android 开源项目不能被用来从仅仅纯源代码,并且需要附加硬件相关所有权来运行库,特别的硬件图形加速。
Nexus S,Nexus S 4G,Galaxy Nexus和 PandaBoard 的官方二进制文件能被下载从Google 的 Nexus 驱动页,添加访问附加的硬件能力用非开源代码。
当一个设备被支持在主分支,大部分最近的二进制文件编号发布是应该被用在主分支的一次。
Nexus One,ADP2 或 ADP1是没有官方二进制文件。
每组二进制文件作为一个自提取脚本在一个压缩存档。解压每个存档后,运行包括自提取脚本从源树的根,确认你同意封闭许可协议条款,并且二进制文件和它们匹配 makefileswill 获得安装在源树的供应商/
阶层。
为了确定新安装的二进制文件是正确的,考虑到被提取后的账户,现有输出任何现有构建需要被删除用
$ make clobber
这个步骤配置和构建 Android 开源工程描述在这页关于构建。
推荐构建为各个设备是有效的通过 lunch 菜单,当运行 lunch
命令没有参数时访问:
设备 | 分支 | 构建配置 |
---|---|---|
maguro | android-4.0.4_r2.1 或主 | full_maguro-userdebug |
panda | 主 | full_panda-userdebug |
wingray | android-4.0.4_r2.1 或主 | full_wingray-userdebug |
crespo | android-4.0.4_r2.1 或主 | full_crespo-userdebug |
passion | android-2.3.7_r1 | full_passion-userdebug |
sapphire | android-2.2.3_r1 | full_sapphire-userdebug |
dream | android-2.2.3_r1 | full_dream-userdebug |
设置设备到 fastboot 模式,假如必须 (看上面)。
因为用户的数据和构建 Android 之间是通常不相容的,当烧写一个新系统,删除它通常是更好的。
$ fastboot erase cache
$ fastboot erase userdata
一个整个 Android 自同能被烧写用一个单命令:写启动,恢复和系统分区一起在验证之后,系统被烧写是兼容安装启动引导和收音机,和重启系统。
$ fastboot flashall
在所有设备上除了分区,上面的命令能被替换用一个单命令
$ fastboot -w flashall
注意,文件系统创建通过 fastboot 在 Motorola Xoom 上是不工作最佳的,并且强烈推荐重创建它们通过恢复
$ adb reboot recovery
一旦恢复,打开菜单(按电源+音量上),擦除缓存分区,然后擦除数据。
在 Nexus S,Nexus S 4G 和 Galaxy Nexus 上,Android 的每个版本有仅仅通过测试相关启动引导程序的特定版本和细胞电台软件。然而,不兼容问题是预期的。当运行新的系统同旧的引导程序和电台镜像根据下面的表。
Nexus S (全世界版本 "XX",i9020t 和 i9023):
Android版本 | 首先引导程序 | 首选电台 | 还有可能 |
---|---|---|---|
2.3 (GRH55) | I9020XXJK1 | I9020XXJK8 | |
2.3.1 (GRH78) | I9020XXJK1 | I9020XXJK8 | |
2.3.2 (GRH78C) | I9020XXJK1 | I9020XXJK8 | |
2.3.3 (GRI40) | I9020XXKA3 | I9020XXKB1 | 所有以前版本 |
2.3.4 (GRJ22) | I9020XXKA3 | I9020XXKD1 | 所有以前版本 |
2.3.5 (GRJ90) | I9020XXKA3 | I9020XXKF1 | 所有以前版本 |
2.3.6 (GRK39F) | I9020XXKA3 | I9020XXKF1 | 所有以前版本 |
4.0.3 (IML74K) | I9020XXKL1 | I9020XXKI1 | 所有以前版本 |
4.0.4 (IMM76D) | I9020XXKL1 | I9020XXKI1 | |
4.0.4 (IMM76I) | I9020XXKL1 | I9020XXKI1 | |
4.0.4 (IMM76K) | I9020XXKL1 | I9020XXKI1 | |
4.0.4 (IMM76L) | I9020XXKL1 | I9020XXKI1 |
Nexus S (850MHz 版本 "UC",i9020a):
Android版本 | 首选引导程序 | 首选电台 | 还有可能 |
---|---|---|---|
2.3.3 (GRI54) | I9020XXKA3 | I9020UCKB2 | |
2.3.4 (GRJ22) | I9020XXKA3 | I9020UCKD1 | 所有以前版本 |
2.3.5 (GRJ90) | I9020XXKA3 | I9020UCKF1 | 所有以前版本 |
2.3.6 (GRK39C) | I9020XXKA3 | I9020UCKF1 | 所有以前版本 |
2.3.6 (GRK39F) | I9020XXKA3 | I9020UCKF1 | 所有以前版本 |
4.0.3 (IML74K) | I9020XXKL1 | I9020UCKF1 | 所有以前版本 |
4.0.4 (IMM76D) | I9020XXKL1 | I9020UCKJ1 | |
4.0.4 (IMM76I) | I9020XXKL1 | I9020UCKJ1 | |
4.0.4 (IMM76K) | I9020XXKL1 | I9020UCKJ1 | |
4.0.4 (IMM76L) | I9020XXKL1 | I9020UCKJ1 |
Nexus S (韩国版本 "KR",m200):
Android版本 | 首选引导程序 | 首选电台 | 还有可能 |
---|---|---|---|
2.3.3 (GRI54) | I9020XXKA3 | I9020KRKB3 | |
2.3.4 (GRJ22) | I9020XXKA3 | M200KRKC1 | 所有以前版本 |
2.3.5 (GRJ90) | I9020XXKA3 | M200KRKC1 | 所有以前版本 |
2.3.6 (GRK39F) | I9020XXKA3 | M200KRKC1 | 所有以前版本 |
4.0.3 (IML74K) | I9020XXKL1 | M200KRKC1 | 所有以前版本 |
4.0.4 (IMM76D) | I9020XXKL1 | M200KRKC1 | |
4.0.4 (IMM76I) | I9020XXKL1 | M200KRKC1 | |
4.0.4 (IMM76K) | I9020XXKL1 | M200KRKC1 | |
4.0.4 (IMM76L) | I9020XXKL1 | M200KRKC1 |
Nexus S 4G (CDMA/WiMAX 版本, d720):
Android版本 | 首选引导程序 | 首选电台 | 还有可能 |
---|---|---|---|
4.0.4 (IMM76L) | D720SPRKE1 | D720SPRLC1 |
Galaxy Nexus (GSM/HSPA+):
Android版本 | 首选引导程序 | 首选电台 | 还有可能 |
---|---|---|---|
4.0.1 (ITL41D) | PRIMEKJ10 | I9250XXKK1 | |
4.0.2 (ICL53F) | PRIMEKK15 | I9250XXKK6 | 所有以前版本 |
4.0.3 (IML74K) | PRIMEKL01 | I9250XXKK6 | 所有以前版本 |
4.0.4 (IMM76D) | PRIMELA03 | I9250XXLA02 | |
4.0.4 (IMM76I) | PRIMELA03 | I9250XXLA02 | |
4.0.4 (IMM76K) | PRIMELA03 | I9250XXLA02 | |
4.0.4 (IMM76L) | PRIMELA03 | I9250XXLA02 |
假如你是构建一个 Android 的,假如你的 Nexus S,Nexus S 4G 或 Galaxy Nexus 有一个旧的引导程序和电台镜像,是标记作为是还有可能在上面的表,但是不认可 fastboot,你能局部性地删除 version-bootloader
和 version-baseband
行在 device/samsung/crespo/board-info.txt
或 device/samsung/maguro/board-info.txt
Galaxy Nexus (GSM/HSPA+ "yakju" 和 "takju",和 CDMA/LTE "mysid")的出厂镜像和 Nexus S (和所有变种)是可用的从Google 的出厂镜像页。
Motorola Xoom 的出厂镜像是直接由 Motorola 发布。
Nexus One 没有有效的出厂镜像。