提取安卓手机的recovery
一直都是从网上下载的recovery文件安装到手机。至于这个小小的recovery到底是什么全然不知。能不能自己做一个recovery呢?因为功能比较多的clockworkmod(简称cmw)的官网上并没有提供我的机型下载,网上的版本是如何做出来的呢?
先找个recovery研究一下再说。
recovery.img 是一个镜像文件,想起了之前弄过的软盘镜像文件。找一个可以打开镜像的工具(winimage、ultraiso),打开里头有三个文件:bootimg-header.bin、bootimg-kernel.bin、bootimg-ramdisk.gz。根据字面意思,一个头和内核二进制文件、内存盘的压缩文件。
搜索了一下自制recovery教程,前面两个应该是内核,bootimg-ramdisk应该就是recovery程序。根据教程所谓的移植,难不成就是官方内核加上cmw的ramdisk。这个问题再放在一边。
先提取手机的recovery吧。我的手机型号是v880+,找到官网的支持下载。找到了三个文件:一个驱动、一个tf卡升级bin文件、一个(在电脑上)一键升级的文件。二进制文件(bin)没办法搞,一键升级的又是单独exe文件,却不知道怎么解开,先放弃。
试试如何从手机里提取出。
发现网上用调试工具(adb)可以对手机进行备份等操作。找到官方提供的驱动安装程序安装,安装成功后,可以在设备管理器里找到adb interface下有一个zte composite adb interface。另外在安装文件夹里有一个adb.exe的文件。
shift+右键单击文件管理器的空白处,选择“在此处打开命令窗口”。
打开手机的开发者调试选项。
执行adb,可以看到一些帮助信息,adb devices看看连接上没。
查看磁盘分区信息 adb shell,进入手机的shell,获取权限# su ,#cat /proc/mtd 可以查看到分区。似乎不同设备查看分区的方法不一样,具体这个分区又是个怎么回事也不清楚。
分区如下:
# cat proc/mtd
cat proc/mtd
dev: size erasesize name
mtd0: 00500000 00020000 "recovery"
mtd1: 00500000 00020000 "boot"
mtd2: 00180000 00020000 "splash"
mtd3: 00080000 00020000 "misc"
mtd4: 02580000 00020000 "cache"
mtd5: 0dc00000 00020000 "system"
mtd6: 0a280000 00020000 "userdata"
mtd7: 01500000 00020000 "oem"
mtd8: 00180000 00020000 "persist"
把recovery导出来:
# cat /dev/mtd/mtd0 > /sdcard/recovery.img
就导出到sdcard里的recvoery.img文件了。然后拉到电脑里来:adb pull /sdcard/recovery.img e:\android\v880plus-recovery.img
---
另外一个命令查看分区:
# cat /proc/partitions
cat /proc/partitions
major minor #blocks name
7 0 10427 loop0
31 0 5120 mtdblock0
31 1 5120 mtdblock1
31 2 1536 mtdblock2
31 3 512 mtdblock3
31 4 38400 mtdblock4
31 5 225280 mtdblock5
31 6 166400 mtdblock6
31 7 21504 mtdblock7
31 8 1536 mtdblock8
179 0 7774208 mmcblk0
179 1 7274414 mmcblk0p1
179 2 250000 mmcblk0p2
179 3 249793 mmcblk0p3
254 0 10426 dm-0
---
一个玩国产安卓平板的网页:http://www.imajeenyus.com/computer/20130301_android_tablet/android/index.html
提取安卓手机的recovery的更多相关文章
- 安卓手机ADB驱动干什么的?
Adb驱动是什么意思? /div> Adb是英文Android Debug Bridge的英文缩写,是debug工具,如果不是写IT的可能也很难理解debug的意思.说的直白一点就是Adb就是手 ...
- ZT 安卓手机的安全性 prepare for Q
如何增强安卓手机的安全性?安卓的安全性太低了!!! 众所周知,安卓手机是非常容易破解的,刷过机的人都知道,不管你之前在手机怎么设置密码,只要进入recovery清空使用记录,手机就会恢复出厂设置,到时 ...
- 安卓手机上安装 谷歌 play 商店
安卓手机上安装 谷歌 play 商店 安卓(Android)就是现在流行的智能手机系统,它是由Google公司和开放手机联盟领导及开发.由于安卓系统的底层代码(AOSP)是开源的,以GPL和Apach ...
- 部分安卓手机微信浏览器中使用XMLHttpRequest 2上传图片显示字节数为0的解决办法
前端JS中使用XMLHttpRequest 2上传图片到服务器,PC端和大部分手机上都正常,但在少部分安卓手机上上传失败,服务器上查看图片,显示字节数为0.下面是上传图片的核心代码: HTML < ...
- 安卓手机APP压力monkey测试
一.Monkey概述 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行 ...
- PowerShell脚本自动设置安卓手机wifi代理
在实际测试工作中,经常要将安卓手机通过wifi代理的形式连接到本机的fiddler或charles服务器代理进行抓包测试.最近一直在想,有没有什么方法可以自动设置安卓手机的wifi代理,曾经想通过修改 ...
- HTML 判断手机的类型(苹果手机安卓手机)
function isJudege_PlatForm() { var version = navigator.appVersion; var platName = navigator.userAgen ...
- 微信小程序 wx.uploadFile在安卓手机上面the same task is working问题解决
微信小程序上传图片的时候,如果是多图片上传,一般都是直接用一个循环进行wx.uploadFile 这个在电脑上面测试与苹果手机上面都不会有什么问题 但当用安卓测试的时候,你会发现小程序会提示一个the ...
- Vysor:在电脑里控制你的安卓手机
Vysor是一款可以使用电脑操作安卓手机的谷歌浏览器插件,在chrome中安装了Vysor插件以后,用户就可以使用电脑打开手机的屏幕,在手机的屏幕界面中,用户不仅可以观看,甚至可以使用电脑直接操作手机 ...
随机推荐
- osgEarth例子
#include <osgViewer/Viewer>#include <osgViewer/ViewerEventHandlers>#include <osgGA/St ...
- 【读书笔记】读《JavaScript模式》 - 函数复用模式之现代继承模式
现代继承模式可表述为:其他任何不需要以类的方式考虑得模式. 现代继承方式#1 —— 原型继承之无类继承模式 function object(o) { function F() {}; F.protot ...
- repo的用法
转自:http://blog.csdn.net/junglyfine/article/details/6299636 注:repo只是google用Python脚本写的调用Git的一个脚本,主要是用来 ...
- ASP.NET 数据库访问通用工具
在工作中,有很多项目已上线后,很多项目的数据库服务器都不会对外开放的,外网想直接访问客户数据库服务器时,可能会出现困难. 这时就需要一个可以查询,更新数据库操作的页面了: 本来用sql语句直接操作数据 ...
- jquery 展开折叠菜单
jquery 展开折叠菜单 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <ht ...
- .NET Framework 4.6的新东西
我们知道.NET Framework 4.6即将随着Visual Studio 2015一同到来,目前依然是预览版.4.6和4,4.5,4.5.1和4.5.2是兼容的,也即安装4.6后会升级替代他们. ...
- 手把手教你在Windows下使用MinGW编译libav(参考libx264的编入)
转自:http://www.th7.cn/Program/cp/201407/242762.shtml 手把手教你在Windows下使用MinGW编译libav libav是在Linux下使用纯c语言 ...
- 0x和H都表示十六进制有什么区别吗?
0x是16进制的前缀,H是16进制的后缀 都是表示十六进制数,意义上没有什么区别,完全相等.至于什么时候用0x,什么时候用H,这取决于你在什么环境下使用,如果在C/C++,必须用0x来表示. 在C语言 ...
- windows脚本定时执行
linux下可以直接用cron定时任务,window下可以使用schtasks 命令代替. 第一次在win7 cmd输入: schtasks 如果出现错误:“错误:无法加载列表资源” 的问题原因很简单 ...
- 利用Bundle在activity之间传递对象
(2010-12-04 09:45:54) 转载▼ 标签: it 分类: android开发 转自:http://chen592969029.javaeye.com/blog/772656 假如需要在 ...