先说下, 这次不是我的G7, 它在4.2.2下活的不错, 先不折腾它了...
手里还有个Nexus 4, 刚拿来是就已经是4.3了, root之后一直用着调试在敲的游戏(I;P), 今天(三天前)接到系统更新, Kitkat 4.4来了, 手一抖就升级了...但由于root过, 中间出了点差错, 然后就没有4.4更新通知了...
一冲动, 根据XDA上的帖子, 自己下载了Kitkat的升级包, 来了此纯手工的升级体验. 记录在此. 原始帖子在这里: http://forum.xda-developers.com/showthread.php?t=2018179
注: 此法升级为'破坏性'升级, 原有的数据会全部被删除, 记得备份哦...
1. 准备
a. 下载安装Android SDK;
http://developer.android.com/sdk/index.html
b. 下载Nexus 4的 Kitkat 4.4升级包; (occam-krt16s-factory-2006f418.tgz)
https://developers.google.com/android/nexus/images
c. 下载CWM Recovery Image; (recovery-clockwork-touch-6.0.4.3-mako.img)
http://clockworkmod.com/rommanager
d. 下载SuperSu更新包; (UPDATE-SuperSU-v1.80.zip)
http://download.chainfire.eu/370/SuperSU
(后两个是为了Root用的)
2. 升级
a. 解压升级包(occam-krt16s-factory-2006f418.tgz), 解开后包里含有下面文件:
b. 在安装有Android SDK工具的目录下打开一个Command窗口, 通过USB连接好手机, 输入下面的命令
>adb reboot bootloader
然后手机会重启到bootloader界面. 检查界面上的数据, 如果此时没有unlock, 通过下面命令解锁;
>fastboot oem unlock
再次输入下面命令, 重启手机;
>adb reboot bootloader
最后, 点击前面解压文件中的flash-all.bat, 等待运行结束, 再重启, 此时手机就升级到Google原生的Kitkat 4.4了.
(此后还可以通过fastboot命令再次锁定boot)
3. root
我觉得Root也不是什么'神秘'的事情, 实际就是Android本身少了个su命令, 而没法做root能做的事情了, 所以呢, 装个su进去就好了.
Android系统上有三层, bootloader, Recovery和ROM, 简单理解就是bootloader加载Recovery和ROM, 而Recovery用于安装和管理ROM. 前面装好了官方的4.4 ROM, bootloader也是有的, 那么再装个Recovery就好了, 因为官方系统是没有Recovery的.
a. 启动系统到bootloader
>adb reboot bootloader
b. 刷Recovery
>fastboot flash recovery recovery-clockwork-touch-6.0.4.3-mako.img
c. 重启系统, 拷贝SuperSu (UPDATE-SuperSU-v1.80.zip) 到SDCard上
d. 启动系统的Recovery
>adb reboot recovery
e. 安装su命令到系统
在Recovery模式下, 选择'install zip from sdcard'找到SuperSu的压缩包, 点击安装, 然后重启
OK, 这时就能在adb shell中使用su命令了, 也就是Root了.
4. 其它问题
这里需要注意的时, 再次启动到Recovery模式, 系统会显示没有Recoery系统, 可以通过如下命令'固定'Recovery.
>adb shell
$su
#mount -o remount,rw -t ext4 /dev/block/mmcblk0p1 /system
#mv /system/etc/install-recovery.sh /system/etc/install-recovery.sh.bak
这样Recovery就被固定下来了, 下次就可以继续使用了, 但还有个问题, 那就是此时SuperSU没法正常使用了, 点击SuperSu会提示'Su需要手工安'等类似的错误, 要解决这个很简单, 再通过Recovery安装一次SuperSu安装包就好了.