声明:本文以期有用的目的写作,不保证本文所述操作能够部分或者完全地满足他人的需求,也不保证其不会给他人造成损失。按本文操作者,如对其生命财产造成任何损失请自理,在法律许可的范围内本人不承担责任。
注意:除 SD 卡数据外,其它数据均可能永久性丢失!
-
首先,开启手机的 USB 调试模式。安装 Android SDK。
-
下载 CyanogenMod 的 Sony Xperia S 版 ROM,将其放到 SD 卡根目录:
adb push cm-9.1.0-nozomi.zip /mnt/sdcard
-
解压其中的 boot.img 备用。
-
解锁 bootloader。在官方网站 http://unlockbootloader.sonymobile.com/ 上确认需要解锁 bootloader 并填写名字、IMEI(去掉最后一位数)和 Email 地址。 注意,此步骤可能导致失去质保!
-
等待解锁 key 的邮件。
-
关机,按住音量增加键并连接 USB 线。指示灯会变为蓝色,即进入 fastboot 模式。
-
执行
sudo fastboot -i 0x0fce getvar version
返回 version: 0.5
,连接正确。
-
执行解锁操作:
sudo fastboot -i 0x0fce oem unlock 0x${key}
-
刷入启动镜像:
sudo fastboot flash boot boot.img
,boot.img 是从 CyanogenMod ROM 里解压出来的那个。
-
重启:
sudo fastboot reboot
-
启动时会出现下图所示的图片。在按键灯和指示灯点亮的三秒里按几次音量键,进入恢复模式。如果错过了,手机卡在启动 Xperia 的启动动画上,使用
adb shell reboot
重启之。
-
此时可能用户数据还在。可能可以通过 adb 备份数据。我使用恢复模式备份,不知是不是操作失误,仅备份成功 boot.img 和 /system,用户数据丢失 TAT
-
执行「wipe data/factory reset」,然后再选择安装下载的那个 zip 文件。
-
等操作完成后重启。这时启动动画应该变成蓝色机器人了。
-
如需要 Google 应用,请单独下载后如同 ROM 一样安装。
安装完成后,我发现 CyanogenMod 的主题和启动动画实在是不好看。目前我已经把启动图片、开机动画和动态壁纸改回 Sony 原来的了。开机动画位于 /system/media/bootanimation.zip
,直接替换即可。动态壁纸在 Sony 的 ROM,文件名叫「CosmicFlow.apk」(sha256sum: 2c65079df9ff2a55d0bedb917cdaedd5d11e68fa9c9bc476aa20c92a508e3527),安装即可。至于启动图片,在 boot.img 里,而这个 boot.img 是 Sony 特有的格式。下篇详述了。