一、Fastboot是什么?
1.1 首先介紹Recovery模式(卡刷)
在系統進行定制時,編譯系統會編譯出一份ZIP的壓縮包,里面是一些系統分區鏡像,提供給客戶進行手動升級、恢復系統。需要提前將壓縮包內置SDcard,在Recovery模式進行。進入Recovery方法:將手機完全關機后,按住音量鍵下(上)+電源鍵,進入BootLoader界面。用音量加減來控制光標,電源鍵來進行確認(有的機器只能用音量下鍵進行選擇,上鍵是確認鍵)。說明:有的機器可能沒有預裝Recovery。
1.2 介紹Recovery模式(線刷)
在安卓手機中Fastboot是一種比Recovery更底層的刷機模式。使用USB數據線連接手機的一種刷機模式。這就是所謂的線刷,與Recovery模式相比Fastboot需要掌握一些燒機命令,對於某些系統卡刷來說,線刷更可靠,安全。
二、Android系統分區介紹
hboot——系統開機引導類似電腦BIOS,這塊刷錯手機就會變成磚
radio——通訊模塊、基帶、WIFI、Bluetooth等銜接硬件的驅動軟件
recovery——系統故障時負責恢復
boot——Linux嵌入式系統內核
system——系統文件、應用
cache——系統運行時產生的緩存
userdata——用戶使用APP產生的緩存數據
三、Fastboot環境搭建
3.1 Android SDK工具platform-tools目錄附圖:
進入這個目錄下就可以使用adb、fastboot命令了,也可以先配置環境變量就不用每次這么麻煩。可以把這個目錄單獨拷貝出來,攜帶方便一點,SDK太大了。其實很多刷機工具、刷機腳本都是圍繞此工具進行刷機的,使用的也就是adb、fastboot命令,只不過別人將各種情況判斷寫成程序而已。
四、Fastboot刷機命令
4.1 寫入分區步驟以及命令
4.1.1 adb devices——查看手機是否連接上
4.1.2 adb reboot bootloader——將手機重啟到Fastboot模式
4.1.3 fastboot devices——查看Fastboot模式下連接的手機
4.1.4 幾種分區寫入如下:(例如:system.img刷入的分區電腦上具體的路徑)
-
fastboot flash system system.img
-
fastboot flash boot boot.img
-
fastboot flash radio radio.img
-
...
4.1.5 fastboot reboot——Fastboot模式下重啟手機
4.2 擦除分區命令
擦除分區前需要按照4.1.1——4.1.3步驟走一遍,擦除會將該分區恢復到使用前狀態
-
fastboot erase system
-
fastboot erase boot
-
...
【准備工作】
首先需要准備好刷機包,可以是自己編譯的,也可以是從別處拷貝的,但一定要確保刷機包適用於你的 Android 設備。然后解壓刷機包,解壓后我們可以得到 boot.img、recovery.img、system.img、bootloader 文件,正是這些文件構成了 Android 設備的系統。
讓設備進入 fastboot 環境。有 2 種方法:
執行命令 adb reboot fastboot
或者
同時按住 增加音量 和 電源 鍵開機。
【命令執行流程】
在設備進入到 fastboot 環境后,根據需求執行下面的命令進行刷機:
fastboot flashing unlock # 設備解鎖,開始刷機
fastboot flash boot boot.img # 刷入 boot 分區。如果修改了 kernel 代碼,則應該刷入此分區以生效
fastboot flash recovery recovery.img # 刷入 recovery 分區
fastboot flash country country.img # 刷入 country 分區。這個分區是開發組自己划分的,別的 Android 設備上不一定有
fastboot flash system system.img # 刷入 system 分區。如果修改的代碼會影響 out/system/ 路徑下生成的文件,則應該刷入此分區以生效
fastboot flash bootloader bootloader # 刷入 bootloader
fastboot erase frp # 擦除 frp 分區,frp 即 Factory Reset Protection,用於防止用戶信息在手機丟失后外泄
fastboot format data # 格式化 data 分區
fastboot flashing lock # 設備上鎖,刷機完畢
fastboot continue # 自動重啟設備
from:https://blog.csdn.net/s13383754499/article/details/82755012