提取安卓手机的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插件以后,用户就可以使用电脑打开手机的屏幕,在手机的屏幕界面中,用户不仅可以观看,甚至可以使用电脑直接操作手机 ...
随机推荐
- ubuntu下使用反编译apk,工具dex2jar和jd-gui
ubuntu下使用反编译apk, 工具 1:通过apk-tool反编译出资源文件: http://code.google.com/p/android-apktool/ 2.首先使用dex2jar反编译 ...
- MySQL常用的自带函数
MySQL自带函数十分丰富,合理使用可以减少很多编码工作. >>数学函数 数学函数主要用于处理数字,包括整型.浮点数等.数学函数包括绝对值函数.正弦函数.余弦函数.获取随机数的函数等.AB ...
- Ubuntu和windows共享文件夹
参考文章: http://www.cnblogs.com/zhengyuxin/articles/1938414.html
- undefined reference to 'typeinfo for android::Thread'
原因:工程使用了系统库libstagefright.so,而该库是Android系统用no-rtti方式编译出来的,因此我们的工程也必须要用no-rtti方式编译. 解决方法:在Application ...
- Codeigniter:如何写一个好的Model
本文是关于在Code Igniter PHP MVC框架中如何编写Model方法. CRUD 方法 CRUD 是Create, Retrieve, Update, and Delete的缩写. 这些是 ...
- 使用 Docker 建立 Mysql 集群
软件环境介绍操作系统:Ubuntu server 64bit 14.04.1Docker 版本 1.6.2数据库:Mariadb 10.10 (Mariadb 是 MySQL 之父在 MySQL 被 ...
- 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(六)码农网
30. 用密码保护 GRUB 用密码保护你的 boot 引导程序这样你就可以在启动时获得额外的安全保障.同时你也可以在实物层面获得保护.通过在引导时给 GRUB 加锁防止任何无授权访问来保护你的服务器 ...
- 微信SDK开发学习
public class MainActivity extends Activity { // 应用程序的id,就是在网上开发平台创建应用的appid public static final Stri ...
- JavaScript有哪些延迟加载的方式?
defer和async,动态创建DOM方式(用得最多),按需异步载入js.
- [LintCode] Continuous Subarray Sum II
Given an integer array, find a continuous rotate subarray where the sum of numbers is the biggest. Y ...