转载请标明出处:http://blog.csdn.net/xx326664162/article/details/50353670 文章出自:薛瑄的博客
你也可以查看我的其他同类文章,也会让你有一定的收货!
ADB
ADB的全称为Android Debug Bridge,就是起到调试桥的作用。
Android设备(如手机)连接PC时所需要的驱动程序,一般Android设备连接WinXP是无需安装驱动的。
通过adb我们可以通过DDMS来调试Android程序,说白了就是debug工具。
ADB是android sdk里的一个工具, 用这个工具可以直接操作管理android模拟器或者真实的andriod设备. 它的主要功能有:
- 运行设备的shell(命令行)
- 管理模拟器或设备的端口映射
- 计算机和设备之间上传/下载文件
- 将本地apk软件安装至模拟器或android设备
ADB是一个 客户端-服务器端 程序
- 客户端是你的电脑,用来操作手机
- 服务器端是android设备。
ADB驱动就是电脑与android 设备的通信的客户端驱动程序。
Fastboot
我认为Fastboot类似于电脑的BIOS系统
Fastboot启动,更像是一种电脑上的U盘启动,类似于电脑上可以在U盘上选择不同的PE系统(非电脑上)。
对于手机而言fastboot可以将电脑上的recovery镜像(非手机上),加载到手机。
fastboot方法更灵活,功能也更强大,fastboot方法不需要依赖于recovery,甚至linux底层刷坏了recovery模式都进不了的情况下也可以通过fastboot方工刷回来。fastboot模式其实是调用spl进行刷机的,所以如果刷spl坏了,fastboot模式应该也进不了,也就是砖了。
fastboot方法需要电脑上有fastboot程序,同时手机要进入fastboot模式才可以操作
Recovery
Recovery 类似于电脑端的PE系统(PE系统指的是拥有完整系统的最核心功能,而Recovery更像是PE系统中的装机软件和清理软件等一些装机工具)
recovery是一个微型系统,可以对手机各个分区进行擦除、写入,
Hboot
检测SD卡,当你把一些特殊制作的SD卡插入后,SPL可以在启动时校验并根据SD卡内容刷机或执行一些命令。
这有点类似于PC 的从软驱启动。简单点说,SPL就相当于PC的BIOS。
SPL英文全称是Second Program Loader,“第二次装系统”,就是负责装载操作系统到RAM中。
Bootloader
手机开机前运行的小程序,会进行硬件初始化,获取内存大小信息等,调整手机到适配状态;
然后以用户的按键组合进入到某种启动模式,如所熟知的电源键和音量键的组合,可以进入到Recovery、Fastboot 或者正常开机。
在我们接触刷机时,Bootloader、Fastboot已经混合为一个概念;我们只需了解的是,对部分机型,有Bootloader解锁以及对应驱动
fastboot和adb的一个重要区别
似乎android引导需要三个步骤:一次引导;二次引导;然后才是android。
如果是这种情况,在bootloader和android里,应该是使用不同协议和PC机通讯。
- 在引导阶段用fastboot devices,发现了手机,可以操作;
- 正常方式开启手机,用adb devices,发现了手机,也可以操作(adb shell进入熟悉的linux控制台,呵呵)。
对上面这句话的疑惑,我的PC没有成功安装fastboot devices,但是用刷机大师,启动fastboot 模式却成功并可以用执行fastboot 命令,也并未发现电脑中有fastboot devices。
是否fastboot devices和adb devices其实是一个驱动,只是在手机不同状态下的,不同叫法?看到甜辣椒上,中兴手机安装fastboot 驱动,结构截图中的设备管理器显示的是ADB 驱动http://www.onekeyrom.com/help/zte_tyjc-zte_5241.html
结论:使用fastboot和adb,注意手机的不同工作状态
- fastboot对应于boot状态
- adb对应于android运行状态。
(网上很多文章,没有提及这点区别,估计要困惑一些新手)
来自我的网易博客:http://xuexuan123.blog.163.com/blog/static/240909047201502312718738/
关注我的公众号,轻松了解和学习更多技术