android的recovery,fastboot和bootloader

2024-06-01 17:48

本文主要是介绍android的recovery,fastboot和bootloader,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        虽然最近,我主领的android项目重构工作,正在有条不 紊的开展当中,但是因为项目一直迭代,技术开发不能影响业务的展开。而公司的人都是干缝缝补补的活的,所以,把这个工作时间可能会拉的比较长。大概估计的是半年完成,实际肯定会少于半年。总比之前画半年的鸡蛋,好的多。

        哪怕现在公司别人由于业务少,技术就不动我,我是受不了安逸舒适的。除了思考项目的事情。。最近一段时间,也在了解和学习,Android 系统定制相关的东西。

        想定制,就是动系统层,这层,就要会系统开发了。利用编译系统源码,来修改系统应用,和framework层的东西。但是,不要太无解,如果只是做系统基本的应用开发,也是可以不从源码角度开发的,前提是,你需要有一个非常高权限系统用户的android手机。

      好了,上面,算是我以后,关于这个知识点自学过程的一个开题吧。好吧,说正经的。。也是我之前整理的。


Fastboot /Bootloader的概念是普遍性的:

大多数情况下,它们的 Fastboot/Bootloader 模式是锁定的。但是,值得称道的是,现在越来越多的厂商已渐渐向
开发的 Fastboot/Bootloader 模式过渡.

recovery:

如果没有进入fastboot,bootloader继续执行,如果又发现有特殊的按键组合,比如htc g2上是home键和开机键,则会
进入recovery模式。分析recovery.img镜像文件就会发现,它里面包含了一个kernel以及一个可执行程序recovery,以
及一些初始化文件。从某种意义来说,这就是一个小型操作系统,和正常启动进入的系统的kernel是一样的,只是init及
之后干的事情不同。
这里的kernel和我们常说的linux内核还是有差异的,linux内核是包括kernel以及调度器内存管理等除显示界面外完
整系统。而kernel只是指内核init进程启动前的那一段逻辑。
Recovery恢复时,刷机包通常放在SD卡里,所以这里刷机一般称为卡刷。

fastboot:

fastboot,它是bootloader后期进入的一个特殊阶段。可以通过数据线与电脑连接,然后在电脑上执行一些命令,如
刷系统镜像到手机上。fastboot可以理解为实现了一个简单的通信协议,接收命令并更新镜像文件,其他什么的干
不了。
须有一个PC机并且USB线要始终联着。所以这种方式称为线刷。
fastboot需要bootloader的支持,所以不是每家手机都会支持这种模式。
联想手机居然把这个阶段,叫做DroidBoot.

bootloader:

机器首先要启动,CPU 最先执行的一段程序就是 BootLoader,这和电脑上的BIOS是一个玩意儿。
BootLoader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存
空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。在嵌入
式系统中,通常并没有像BIOS那样的固件程序(注,有的嵌入式CPU也会内嵌一段短小的启动程序),因此整个系统的
加载启动任务就完全由BootLoader来完成。比如在一个基于ARM7TDMI core的嵌入式系统中,系统在上电或复位时通常
都从地址0x00000000处开始执行,而在这个地址处安排的通常就是系统的BootLoader程序。

三方厂商自定义的一些模式:(有的是基于系统的,有的只是上面换个说法)

启动模式(normal mode)、
安全模式(safe mode)、
恢复模式(recovery mode)、
引导模式(bootloader mode)、
fastboot模式和诊断模式(diagnostic mode)。

特殊模式:

Downloading模式(俗称挖煤模式):三星安卓手机刷官方系统时使用该模式,配合电脑端odin软件进行。
FTM模式(工厂测试模式):该模式对用户而言一般可用来刷机,当然部分机型需要配合电脑端RSD软件进行。
T卡模式:中兴手机刷官方系统使用的模式。一般将系统image文件夹(文件夹内需要有image.bin文件)拷贝至SD卡中并将SD卡插入手机。
SD卡升级模式:该模式为华为刷官方系统时使用。一般将dload文件夹拷贝至SD卡中并将SD卡插入手机。自动刷入。
PS:当手机识别不到SD卡时,该模式会显示粉屏,俗称“粉屏模式”。
AP模式(或BP模式):该模式存在于部分机型中,如moto defy等,其作用等同于fastboot模式。

拿到的系统文件名称:
        镜像包 .img
        打包后的镜像包  .bin
分区名:
        BootLoader   相当去BIOS.
        recovery     简单的一个内核系统,卡刷
        boot         迷你文件系统负责挂载,LinuxKernel,负载system,cache,userdata等。
       system       常规的Android系统所在的分区,挂载在/system目录下.
        userdata     /data 用户数据分区。
        cache        缓存分区,一般用来OTA升级进入recovery前,临时存放OTA包升级的存放文件。
        sdcard

这篇关于android的recovery,fastboot和bootloader的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1021695

相关文章

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

Android里面的Service种类以及启动方式

《Android里面的Service种类以及启动方式》Android中的Service分为前台服务和后台服务,前台服务需要亮身份牌并显示通知,后台服务则有启动方式选择,包括startService和b... 目录一句话总结:一、Service 的两种类型:1. 前台服务(必须亮身份牌)2. 后台服务(偷偷干

Android kotlin语言实现删除文件的解决方案

《Androidkotlin语言实现删除文件的解决方案》:本文主要介绍Androidkotlin语言实现删除文件的解决方案,在项目开发过程中,尤其是需要跨平台协作的项目,那么删除用户指定的文件的... 目录一、前言二、适用环境三、模板内容1.权限申请2.Activity中的模板一、前言在项目开发过程中,尤

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

Android WebView的加载超时处理方案

《AndroidWebView的加载超时处理方案》在Android开发中,WebView是一个常用的组件,用于在应用中嵌入网页,然而,当网络状况不佳或页面加载过慢时,用户可能会遇到加载超时的问题,本... 目录引言一、WebView加载超时的原因二、加载超时处理方案1. 使用Handler和Timer进行超

Android实现任意版本设置默认的锁屏壁纸和桌面壁纸(两张壁纸可不一致)

客户有些需求需要设置默认壁纸和锁屏壁纸  在默认情况下 这两个壁纸是相同的  如果需要默认的锁屏壁纸和桌面壁纸不一样 需要额外修改 Android13实现 替换默认桌面壁纸: 将图片文件替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.*  (注意不能是bmp格式) 替换默认锁屏壁纸: 将图片资源放入vendo

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影

android-opencv-jni

//------------------start opencv--------------------@Override public void onResume(){ super.onResume(); //通过OpenCV引擎服务加载并初始化OpenCV类库,所谓OpenCV引擎服务即是 //OpenCV_2.4.3.2_Manager_2.4_*.apk程序包,存

从状态管理到性能优化:全面解析 Android Compose

文章目录 引言一、Android Compose基本概念1.1 什么是Android Compose?1.2 Compose的优势1.3 如何在项目中使用Compose 二、Compose中的状态管理2.1 状态管理的重要性2.2 Compose中的状态和数据流2.3 使用State和MutableState处理状态2.4 通过ViewModel进行状态管理 三、Compose中的列表和滚动

Android 10.0 mtk平板camera2横屏预览旋转90度横屏拍照图片旋转90度功能实现

1.前言 在10.0的系统rom定制化开发中,在进行一些平板等默认横屏的设备开发的过程中,需要在进入camera2的 时候,默认预览图像也是需要横屏显示的,在上一篇已经实现了横屏预览功能,然后发现横屏预览后,拍照保存的图片 依然是竖屏的,所以说同样需要将图片也保存为横屏图标了,所以就需要看下mtk的camera2的相关横屏保存图片功能, 如何实现实现横屏保存图片功能 如图所示: 2.mtk