如何使用spflashtool备份mtk rom

  • Post author:
  • Post category:其他


说在前面的话:

在刷机包严重欠缺的情况下,

广大机友要求放出官方刷机包的呼声日益强烈,甚至质问官方为什么不放出刷机包。官方也是出于好意,言不由衷啊!

本人故拟定一条自行备份刷机包并作个性修改的思路。本是出于好意,但就此可能引发一系列问题,也就是关于刷机带来的各种问题。希望广大机友能在力所能 及的情况下,理性刷机。这样大家的目的才能算达到了。所以,希望大家在刷机的时候能仔细学习刷机教程,并尽量避免失误。

好了,闲话不多说。

现在先说说基本思路,这里假定你没有rom包也没有root:①sp flash tool备份固件——②ubuntu下挂载system分区,并把system文件夹下的文件拷贝到磁盘(如果已root,跳过前两步,直接拷贝出来即 可。也可用adb备份,跳过前两步)——③在windown下用反编译工具等作个性化修改——④  再回到ubuntu打包system.img——⑤刷 回手机

————————————————————————————————————————————————

第一步:

备份原理及其实现:

到现在为止,vivo系列安卓智能机多是使用MTK系列的芯片。sp flash tool 大家都知道了吧。就是针对MTK平台手机的刷机升级工具。其实,除了刷机之外,它还具有其它功能。比如,回读(readback)。也就是对手机中的 rom包括system.img、recovery.img、boot.img等这些存在于不同分区中img文件进行完全的备份。

关于备份的方法,在以前的帖子就已经提到,不知道有多少童鞋真正自己动手了呢?原帖地址  :  smart phone flash tool 备份rom的方法,后续分享在ubuntu下定制修改



http://bbs.vivo.com.cn/forum.php?mod=viewthread&tid=877612&fromuid=5671652

建议在手机可以正常开机使用的情况下备份。在备份之前最好不要刷机。这样才能保证得到一个有效的刷机包。可以在手机出现问题的时候,自己动手刷机解决这些问题。

需要注意的是,在操作过程,一定不能点错工具上的按钮。


“Format”是指格式化手机,它的功能与恢复出厂设置不同的,该项操作会把手机固件rom全部清除。如操作不当,只好跑售后了。





注意,任何时候都不要点此项!

“Firmware-Upgrade”固件更新,它也会把原本手机中的固件(rom)清除,并重新(从电脑本地文件)下载固件到手机。也与回读无关。回读的时候不要乱点。


“Download”下载固件,是指针对分区的固件下载到指定分区(或多个分区的文件一起下载)。用回读的文件刷机只能用这个选项,至于为什么,后文有详细解释。





PS:操作要规范,必须是先点击工具按扭无误后,方可把手机连接电脑!

其它说明,在上述帖子有更详细说明。

上面首先讲到sp flash tool备份rom,是基于这些备份文件可以在你的手机因为修改软件错误而导致不开机时作为救砖用。

其实, 还有另一种方法备份系统文件夹。要用到adb工具。无需root权限即可备份系统。adb下载,百度云


http://pan.baidu.com/share/link?shareid=441552&uk=2536832031&third=15



具体方法:首先安装vivo手机驱动——然后打开手机的usb调试——解压adb.zip,并进入到adb的解压目录——双击“备份system文件夹.bat”即可对system文件夹备份。

用adb备份好了之后,就可以在window下用反编译工具对apk修改了。

假设你既没有root,也没有rom包。那么,选择一个简单的方法:用adb工具把手机system文件夹pull到adb目录中。

现在你要做的是,合并,apk与odex文件

推荐使用批量合并odex工具。它本身是个批处理。下载地址


http://pan.baidu.com/share/link?shareid=435546&uk=2536832031&third=15

1.下载后,右击鼠标解压到“批量odex2dex”,进入目录。先察看“使用说明.txt”。把备份好的system文件夹中的 framework文件夹下的odex文件全部复制到“make”文件夹下。再把备份好的“system”文件夹中的app文件夹下的apk与全部 odex复制到“file”文件夹中。

2.  双击“开始apk.bat”即可开始合并apk与odex。任务全部完成后,“file”文件夹下还会有10来个apk,它们是出厂时没有 odex化的。也就是说,它们此时是完整的apk安装包了。把它复制到指定地方与“OK”中的apk安装包放到一起。其它已合并odex的安装包则在 “ok”文件夹中。

3.合并好了之后,紧接着就是反编译了,要用到反编译工具,个人推荐Android_Tools_Plus_V9-Update6这个多合一安卓开发工具箱。完全免费。下载地址


http://pan.baidu.com/share/link?shareid=433775&uk=2536832031&third=15

关于Android_Tools_Plus_V9-Update6的使用,更详细可见:apk反编译、美化修改合集



http://bbs.vivo.com.cn/forum.php?mod=viewthread&tid=893195&fromuid=5671652

需要说明的是,你先要下载安装java,并配置好环境变量。环境变量配置方法可见环境配置变量部分:


http://bbs.vivo.com.cn/forum.php?mod=viewthread&tid=893195&fromuid=5671652

至于,你要怎么修改软件。比如,你是vivo用户,你要删除汇,可见帖子:


http://bbs.vivo.com.cn/forum.php?mod=viewthread&tid=894909&fromuid=5671652


。在该帖子二楼是待机桌面的修改。

在你修改后,如果你还打算给它添加点什么,或者从vivo系列移植什么软件。建议你对所有apk重新签名成一样的签名,包括framework文件夹中的 framework-res.apk及其它的jar文件。(所说的签名成一样的签名,就是要使用同一个工具同一个teskey签名。)。批量签名工具无需 另外下载。Android_Tools_Plus_V9-Update6工具本身就自带了批量签名功能。

4.一般来说,太多的apk文件的改动,不能用re管理器复制进系统文件夹并覆盖。

而要选择制作system.img文件,并通过刷机的方式实现。

这里,你是要制作一个rom包,那么,你用adb工具pull到电脑的system文件夹是不足以制作一个有效的rom包的。特别是 system/bin文件夹下的链接文件,通过adb工具并不能拷贝出来。所以,使用 sp flash tool 工具备份system.img不可避免。如果,你是root过的手机,可以下载“MT65xx系列线刷包提取工具”。这样,你可以得到一个 system.img。

然后,你在ubuntu环境下用mount命令挂载system.img,并把修改好的软件放到相应位置。并注意可以删的删掉(包括无用的odex文件)。

由于你删了东西,ubuntu的一个特性是,会在你的system.img中形成一个.Trash文件夹,即回收站。平时你是看不到它的。Trash前面的点,意思是该文件夹隐藏。你必须同时按住键盘的Ctrl+H键,将其显示并删除。并在修改过程不时检查。

最后,修改了挂载文件的所有者与权限后,用umount命令卸载。

或者,你想要得到一个占用空间小的img文件,可以用make_ext4fs +{输出文件名} -s -l +{原始文件系统大小} -a system + {挂载路径}

这样你可以得到一个实际体积的system.img。并且,有意思的是,命令参数-a system 会自动纠正权限与所有者,在生成的输出文件中可以有正确权限了。这样你也可以避免繁琐的修改权限与所有者。

更详细说明,可见帖子:ubuntu12.10中修改system.img



http://bbs.vivo.com.cn/forum.php?mod=viewthread&tid=884023&fromuid=5671652



上面说到了window下对软件修改,并提到在ubuntu下制作rom线刷包。那么,就该知道怎么安装与使用ubuntu。

ubuntu的安装详见


http://bbs.vivo.com.cn/forum.php?mod=viewthread&tid=883562&fromuid=5671652



该帖子前部分说明了ubuntu的wubi安装,在转载部分说明了ubuntu的u盘安装方法。

如果你是初次接触ubuntu,而对电脑装系统不熟的话,推荐你用wubi安装。wubi安装方法,就像我们平常给window安装软件一样简单。

这里给出wubi.exe的下载地址


http://pan.baidu.com/share/link?shareid=342062&uk=1158274699

这方面,ubuntu的安装,在linux公社有更多帖子。看客们可以上去搜帖以更深入了解。