android 自编译 img,【Q我吧。】无需源码,编译recovery.img教程

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

###自制recovery####

接着开始自制recovery吧,下面步骤:

1。从官方包,解压出原生的recovery.img。

2。按照上面解img 的方法,解出原生recovery包的内

核recovery.img-kernel 和ramdisk 内存镜像,再把

ramdisk内存镜像解包,我们要在这个基础上作修改。

3。找到合适的功能比较好的第三方recovery包,比如

以G6的recovery-clockwork-5.0.2.0.img为例,同样解

出其内核kernel 和ramdisk 内存镜像,再把ramdisk

内存镜像解包,我们需要这个包内的有用文件。

4。准备新recovery 的内核,我们使用官方原生包的

recovery.img-kernel,只有原生的内核才能跟手机的硬

件匹配。

5。修改ramdisk内存盘,其内文件列表大致如下:

./init.trout.rc

./default.prop

./proc

./dev

./init.rc

./init

./sys

./etc

./init.goldfish.rc

./sbin

./system

./data

1)default.prop,是一定要改的,可以参照第三方的改,

最关键的:

ro.secure=0 关闭保护

ro.allow.mock.location=1

ro.debuggable=1 调试模式开

persist.service.adb.enable=1 adb远程开

2)/sbin 里面所有的文件都替换成第三方包里面的,

特别是其中有个recovery文件,所有的第三方功能都

在这个recovery中实现。

3)/etc 里的recovery.fstab,是挂载表,可以提供sd

卡ext分区支持。

4)/init可以用原生的,第三方的也行。

6。按照上面打包ramdisk 的方法打包新改的ramdisk

内存盘。

7。按照上面打包img 的方法打包生成新的

recovery-new.img。

正常情况下,到这一步我们自制的recovery.img 就做

好了,可是按上面刷recovery的方法刷入手机了,可

是手机依然是S-ON。这就意味着Hboot会对recovery

进行校验,如果校验不对,那么对不起,你别想启动

手机。最终我发现了HTC   S-ON验证的秘密:

还记得上面说img 的2K的文件头么?秘密就在这里,

可惜不能直接贴图,具体操作如下:

[——现在看来这段话以及下面的8、9、10三步的分

析是有问题的,但是操作虽然怪异结果却是正确的,

正确的分析以及正常的操作,请看下面我11.27日的

补充。小秋  2011.11.29 注]

8。用UltraEdit-32(或者其他16进制编辑器)打开刚

改好生成的recovery-new.img,记住第二行的前三个字

节(10h的0、1、2三个),一会儿有用。

9。再打开手机原生的recovery.img。对比来两个文件

的文件头,把原生的前16行(000h-100h)复制到新

的recovery上覆盖。这个就是S-on校验的内容,直接

生成的img 启动不了就是因为这里通不过校验。

10。最后把新的recovery-new.img,第二行的前三个字

节改回到刚才记下的三个值,保存就OK了。这一步

很关键,我一直是在此处徘徊的,最初我只保留前两

个字节,造成只要对原生img 一改动得稍大一点就启

动不了。总之这里的三个值很关键,好像跟img 的大

小有关系,如果不对的话新的recovery绝对启动不了。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值