android 开发刷rom,Android ROM开发(7) TF卡(金卡)自引导刷机
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卡(金卡)自引导刷机相关推荐
- 怎么测试android rom,Android ROM开发(6) RUU刷机测试1
Andrew Huang 转载请注明作者及网址 在刷机时,经常会听到几个名,OTA,RUU. RUU 是Rom Update Utility 的缩写,RUU是官方发布的的完整的升级包.HTC发包通常的 ...
- android sd卡 格式化 rom,Android开发之获取SD卡及手机ROM容量的方法
本文实例讲述了Android获取SD卡及手机ROM容量的方法.分享给大家供大家参考,具体如下: 这里通过一个简单的小例子,来获取SD卡的容量和手机ROM的容量,代码如下: package com.ur ...
- m8 windows android,M8刷M9 Android ROM完全教程
近期魅族M9的消息铺天盖地,让广大用户看得眼花缭乱.不过,前两天国外放出来魅族M8刷M9固件,让不少用户兴奋不已.日前有国内论坛放出来魅族M9的ROM和刷机教程,笔者用自己的M8进行了刷机,并根据实际 ...
- MIUI官方论坛 - 发烧友必刷的Android ROM
MIUI官方论坛 - 发烧友必刷的Android ROM MIUI官方论坛 - 发烧友必刷的Android ROM 推荐版最新版本:2.8.3 (相关说明) 更新日期:2012年08月03日 温馨提示 ...
- note4x rom android p,红米Note4x安卓8.0刷机包
红米Note4x安卓8.0刷机包是第三方ROM团队Lineage OS推出的一款安卓8.0刷机包,红米Note4x的米粉们解锁Bootloader以后即可刷入新系统,想要快速拥有红米Note4x安卓8 ...
- Android 固件,刷固件,ROM包
什么是固件?刷固件?Rom包 ...? 1. 固件----操作系统 所谓的固件就是将操作系统固定在手机中的一个固定的位置(硬件上),平时不随意改动,活动的数据另外单独放一边. 这样做的目的在于保护内 ...
- android卡刷包自制rom之添加删除,添加/删除ROM内置APP的教程
ROM闪存软件包是Android闪存中必不可少的东西删除刷机包自带软件,但是大多数ROM闪存软件包都与许多应用程序集成在一起,其中许多不是您想要的,也没有您想要的应用程序. 使用Mushroom RO ...
- m8+android固件,给力!魅族M8刷M9 Android ROM双系统成功!附教程
上午发现网上已经有适合M8使用的M9 android ROM下载,就赶紧down了下来.M8刷机很简单,简单几步就成功了,刷成了自带的M8系统+M9的android系统.开机进入android系统,第 ...
- android studio刷rom,Android Studio 之 ROM【1】, Entity,Dao,Database
Android Studio 之 ROM, Entity,DAO,DataBase 1.Entity 实体类 package com.example.roombasic; import android ...
最新文章
- 机器学习发现了地下上千公里处的热岩床
- bzoj3171: [Tjoi2013]循环格(费用流)
- day4 流程控制while 判断if
- 344. Reverse String
- JS实现Echarts的图表保存为图片功能
- extmail mysql数据库 重启_centos 5.8 x86_64下安装mysql+postfix+extmail+extman+courier-authlib+courier-imap...
- 微信公众平台 图片 java_Java微信公众平台之素材管理
- c语言语言教程0基础_C语言基础
- 高德地图怎么搜索marker_2018-07-06 高德地图搜索定位,滑动地图显示周边信息,根据地址搜经...
- 95-080-054-源码-启动-启动TaskManager
- pandas打印某一列_Pandas数据分析教程
- java 多个timer_java – Timer正在创建多个计时器实例
- 单片机c语言数码显示实验报告,单片机c语言版数码动态显示实验报告.doc
- Vue.js 还是 React?你会选择哪一个?为什么?
- 微信公众服务号申请流程
- excel文件保护忘记密码解除
- 数据库管理系统的层次结构--物理组织
- 搭建简单的企业网站,华为云速建站和阿里建站哪个好?
- ssdt函数索引号_技术分享 - 32位系统上获取SSDT表地址以及从中获取指定SSDT函数的地址...
- SQL语句之单行函数