android7.0获取外挂tf卡路径,Android ROM开发(7) TF卡(金卡)自引导刷机

本文介绍了一种特殊的HTC手机刷机方法——金卡刷机,该方法适用于HBOOT状态为S-ON的手机,允许用户通过制作带有特定引导程序的TF卡(即金卡)来自由刷机。文章详细讲解了金卡制作流程,包括获取TF卡CID号、申请及写入GoldenCard.img文件等步骤,并指导如何从RUU包中解压出所需的image文件以完成刷机。

Andrew Huang 转载请注明作者及网址

官方的RUU对于刷机要求严格。必须使用PC通过USB在线刷机,检查也比较严格。如果想刷CID不一致的ROM,或者降版刷机。用这个方法不行。

因此如果你的机器的Hboot 是S-ON版本,而又想自由刷机,有一种办法是用HBOOT从TF卡引导程序,如果TF卡的引导程序如果采用不检测版本和CID版本,这样就可以自由刷机了。这种可引卡的TF卡的引导程序名字称为 GoldCard.img,因此称为金卡。

但是这种方法制作金卡,步骤有点繁锁。远不如取得ROOT权限后用Recovery的SD升级方式简单。当然有可以不是所有版本都能取得ROOT权限的,所以这个方法还是有一定的实用价值的。

一.金卡刷机原理.

从制作和刷机的流程来看,如果进入HBOOT中,如果长时间没有做操作,HBOOT将自动查找SD卡上 PC49DIAG.zip进行升级。在检测SD卡时,会检查SD卡引导区是否有程序,如有再检测升级文件进行升级。

用金卡升级流程有如下几步:

a)查找TF(Macro SD)卡的CID号,然后向专门的goldimg制作网址提交。这一些网址会把TF上的拥有SuperCID的权限的SD卡引导程序文件发邮件给你

b)把引导文件写入TF卡的引导区里。

c)从RUU文件抽取映像文件。并将映像文件拷入TF卡产中.

d)将TF卡插入手机,并引导进入HBOOT,它会自动查找TF并升级。

二.金卡(Goldcard) 制作

如果你的S-OFF版本,可以跳过金卡引导。直接刷新.但是注意如果升级包是HBOOT是S-ON版本,刷完后又变回成了S-ON了,这个要注意一下

2.0 在windows将TF卡格式化成FAT32 格式。

2.1 申请Goldcard.img

首先,用adb 去查看TF卡的CID号,CID是Customer ID entity 的简称,用来唯一标识TF卡.一个TF卡在LINUX根据Mount顺序不同,可能设备结点不一样

在手机,打开USB调试开关。用USB连接到PC上。

用adb shell 命令检查出TF卡的CID。一般TF卡是挂载在mmc1设备上。

adb shell  cat /sys/class/mmc_host/mmc1/mmc1:*/cid

C:\Documents and Settings\hxy>adb shell cat /sys/class/mmc_host/mmc1/mmc1:*/cid

02544d534130324707157817cc00b7ea

后一串数字就是CID号

然后将CID转码(为什么这样做,可能是GoldImage的要求)

比如我的转码后的ID是 00b700cc1778150747323041534d5402

然后提示转到  申请金卡的image

但是这个方法最大问题是,revskills.de 网站不稳定,申请几次均未成功,用了我的三个bluedrum帐号,

只有bluedrum@163.com申请成功了.

2.2 Goldcard.img 写入TF卡引导区

因为这个goldcard.img 不是简单向TF卡的分区拷贝文件,而且要写入TF的引导扇区里.因此需要特殊软件,一般人推荐HxD,我个人比较喜欢用WinHex.

2.1.1 WinHex操作

选择"工具"-->打开磁盘,选择TF卡所在物理磁盘,注意不要选错硬盘,这样会让其挂掉.

用WinHex 打开GoldCard.img ,全选其内容

按16进制复制

选择移动磁盘的0x00,进行写入操作

然后选择"保存磁盘"

HxD也是类似操作,这里有一个详细图文操作

这样改造后,这张TF卡就是人称金卡了.

二.从RUU包中解压出image文件.

如果CID之类不匹配,或者HBOOT的状态为S-ON,用在线方法安装比较麻烦,

因此很多网友用的另一种方法,从RUU解出各个image文件,手工用recovery模式来安装.

官方的RUU包实际上打包成EXE的压缩文件. 因此可以从中读出各个image文件.

解压出来参考这页

2.1 执行在线升级1-4步

手机用数据线连接电脑,并选择“Sync”同步方式

PC端运行RUU包软件b8519ed348404d2fbba23f88249487da.png24fcbc23f79c3470de80ab1109ce9efc.png8a48169f6c374fd603b7189127f8d2bb.png416b375cf3a19bd8154e5e0494f2cb3c.png

2.2 找到升级程序工作目录

1.如果是WIN7,直接在任务管理器找到ARUWizard.exe ,用右键菜单打开文件所在目录.

2.如果WinXP,可以运行  Process Monitor,可以从这里下载

17a7b6962b30de62947529cc580e921f.png

打开程序的当前目录,我的是在 C:\Documents and Settings\hp\Local Settings\Temp\{09360C39-74CD-4E0B-A347-8FB24683ED85}\{50F2F878-636A-496F-A7CB-544C067E0C4B} 之下.

这个目录下的rom.zip 就是所需要各个ROM文件.

05e042363b938cdc3567d08409fd9dc9.png

一个rom有如下几个文件

android-info.txt             针对机型和版本信息;

boot.img                         bootimg 分区内容(Kernel 根文件系统)

hboot_7225_0.80.0003_100528.nb0  bootloader升级文件,后面版本号

radio.img                        基带芯片驱动 ,radio分区.

rcdata.img                       配置文件

recovery.img                     recovery分区文件

splash1.nb0                      启动画面文件

system.img                       system分区升级文件

userdata.img,                    userdata 分区

我的ROM的android-info.txt文件内容如下

modelid: PC4910000

cidnum: HTC__621

mainver: 1.18.709.2

hbootpreupdate:2

DelCache: 1

rcdata.img内容

QCT_UMTS_RADIO_VER=1

DisH=1

MSCMode=12

HSDPACat=8

QCT_UMTS_RADIO_END=1

取得ROM文件后,可以选择RUU程序取消退出升级

将ROM.zip改名为 PC49IMG.zip(注意文件名的大小写),因为HBOOT引导是查找这个文件名,把这个文件拷贝到TF卡的第一个FAT32分区的根目录里.

不同机型这个文件名不同,所以你刷机前看一下HBOOT启动时提示文件名.

四.用金卡刷机

关机后,把金卡插入手机,按住音量下键后,再按POWER键进入HBOOT,HTC G8 直接等着就行,如果HBOOT发现了 PC49IMG.zip ,它首先会解压,此时会在手机屏幕右上方出现一个进度条.等待其解压完毕

解压完毕后,HBOOT会自动出现一个菜单,最下面的英文是问"是否更新系统",按音量上键表示Yes,按音量下键表示NO

按Yes,HBOOT开始逐项更新.

更新完毕后,提示按电源键重启。这样开始重新设置手机

至此金卡刷机结束。

刷卡问题:   我试着用这种方法降版刷机,在解压后提示“main version is older”,有可以新版的HBOOT已经防止了这种升级方式?有的说要ROOT才行那样不如直接用root刷机就行了

五.第三方开源工具

有人开发开源的升级工具 HTCFlasher

这需要留到后面测试一下

这是一个LINUX的下刷机程序

f76a68f0e881bf2b0672ae20fdf28ac3.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值