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包软件

2.2 找到升级程序工作目录

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

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

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

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

一个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的下刷机程序

android 开发刷rom,Android ROM开发(7) TF卡(金卡)自引导刷机相关推荐

  1. 怎么测试android rom,Android ROM开发(6) RUU刷机测试1

    Andrew Huang 转载请注明作者及网址 在刷机时,经常会听到几个名,OTA,RUU. RUU 是Rom Update Utility 的缩写,RUU是官方发布的的完整的升级包.HTC发包通常的 ...

  2. android sd卡 格式化 rom,Android开发之获取SD卡及手机ROM容量的方法

    本文实例讲述了Android获取SD卡及手机ROM容量的方法.分享给大家供大家参考,具体如下: 这里通过一个简单的小例子,来获取SD卡的容量和手机ROM的容量,代码如下: package com.ur ...

  3. m8 windows android,M8刷M9 Android ROM完全教程

    近期魅族M9的消息铺天盖地,让广大用户看得眼花缭乱.不过,前两天国外放出来魅族M8刷M9固件,让不少用户兴奋不已.日前有国内论坛放出来魅族M9的ROM和刷机教程,笔者用自己的M8进行了刷机,并根据实际 ...

  4. MIUI官方论坛 - 发烧友必刷的Android ROM

    MIUI官方论坛 - 发烧友必刷的Android ROM MIUI官方论坛 - 发烧友必刷的Android ROM 推荐版最新版本:2.8.3 (相关说明) 更新日期:2012年08月03日 温馨提示 ...

  5. note4x rom android p,红米Note4x安卓8.0刷机包

    红米Note4x安卓8.0刷机包是第三方ROM团队Lineage OS推出的一款安卓8.0刷机包,红米Note4x的米粉们解锁Bootloader以后即可刷入新系统,想要快速拥有红米Note4x安卓8 ...

  6. Android 固件,刷固件,ROM包

    什么是固件?刷固件?Rom包 ...? 1.  固件----操作系统 所谓的固件就是将操作系统固定在手机中的一个固定的位置(硬件上),平时不随意改动,活动的数据另外单独放一边. 这样做的目的在于保护内 ...

  7. android卡刷包自制rom之添加删除,添加/删除ROM内置APP的教程

    ROM闪存软件包是Android闪存中必不可少的东西删除刷机包自带软件,但是大多数ROM闪存软件包都与许多应用程序集成在一起,其中许多不是您想要的,也没有您想要的应用程序. 使用Mushroom RO ...

  8. m8+android固件,给力!魅族M8刷M9 Android ROM双系统成功!附教程

    上午发现网上已经有适合M8使用的M9 android ROM下载,就赶紧down了下来.M8刷机很简单,简单几步就成功了,刷成了自带的M8系统+M9的android系统.开机进入android系统,第 ...

  9. android studio刷rom,Android Studio 之 ROM【1】, Entity,Dao,Database

    Android Studio 之 ROM, Entity,DAO,DataBase 1.Entity 实体类 package com.example.roombasic; import android ...

最新文章

  1. 机器学习发现了地下上千公里处的热岩床
  2. bzoj3171: [Tjoi2013]循环格(费用流)
  3. day4 流程控制while 判断if
  4. 344. Reverse String
  5. JS实现Echarts的图表保存为图片功能
  6. extmail mysql数据库 重启_centos 5.8 x86_64下安装mysql+postfix+extmail+extman+courier-authlib+courier-imap...
  7. 微信公众平台 图片 java_Java微信公众平台之素材管理
  8. c语言语言教程0基础_C语言基础
  9. 高德地图怎么搜索marker_2018-07-06 高德地图搜索定位,滑动地图显示周边信息,根据地址搜经...
  10. 95-080-054-源码-启动-启动TaskManager
  11. pandas打印某一列_Pandas数据分析教程
  12. java 多个timer_java – Timer正在创建多个计时器实例
  13. 单片机c语言数码显示实验报告,单片机c语言版数码动态显示实验报告.doc
  14. Vue.js 还是 React?你会选择哪一个?为什么?
  15. 微信公众服务号申请流程
  16. excel文件保护忘记密码解除
  17. 数据库管理系统的层次结构--物理组织
  18. 搭建简单的企业网站,华为云速建站和阿里建站哪个好?
  19. ssdt函数索引号_技术分享 - 32位系统上获取SSDT表地址以及从中获取指定SSDT函数的地址...
  20. SQL语句之单行函数

热门文章

  1. 十分有用的cut剪切命令
  2. 第十章——维护索引(8)——在计算列中创建索引提高性能
  3. word标题段前断后设置都为6磅,标题段前无效
  4. swagger生成redoc文档
  5. 企业微信手机端可以退出吗?会影响电脑端企业微信吗?
  6. 让你实现财富自由,从此不再缺资金
  7. SQL Server密码破解工具简介
  8. 单片机编程软件很简单(八),Keil单片机编程软件辅助功能讲解
  9. Spring设置定时任务时,关于执行时间的规则设置
  10. 在Qt中使用SmtpClient发送邮件