這里也有一篇比較詳細的
http://blog.csdn.net/qq1084283172/article/details/52334452
?
官網刷機包
https://developers.google.com/android/images#hammerhead
?
我的機器是Nexus 5
?
一. 安裝驅動
?
如何進入fastboot模式
1. 拔掉數據線,將手機關機
2.?關機后同時按住【音量減小鍵】和【開關機鍵】即可進入Fastboot模式
?
開啟usb調試 ?--> 勾選usb調試
?
adb devices可以看到設備名即可
?
二. 下載刷機包
這是Android 4.4的刷機包,大家可以根據需求自己尋找指定的版本的刷機包
https://dl.google.com/dl/android/aosp/hammerhead-kot49h-factory-02006b99.tgz
?
下載完畢后的文件如下:
?
三.?bootloader鎖定與解鎖
Nexus 5 解鎖 bootloader 和重新鎖定 bootloader
?
鎖定狀態如下:
?
輸入命令
fastboot oem unlock ? ? 解鎖
fastboot oem lock ? ? ? ? 鎖定
?
解鎖時可能會需要你控制音量鍵移動選擇Yes,電源鍵確定即可
?
解鎖定后效果
?
四.開始刷機
在fastboot模式下
雙擊刷機包下的flash-all.bat就可以開始一鍵刷機了
經過一段時間的等待就刷機好了
?
五.fastboot命令大全
命令列表:
?
Android分區:
?
常用命令情景:
1.升級系統
fastboot flash bootloader u-boot.bin
fastboot flash kernel uImage
fastboot flash system system.img
fastboot flash userdata userdata.img
fastboot flash ramdisk ramdisk-uboot.img
fastboot erase cache
?
fastboot flash {partition} {*.img} ? 例:fastboot flash boot boot.img或fastboot flash system system.img等。
fastboot flashall ? 注意:此命令會在當前目錄中查找所有img文件,將這些img文件燒寫到所有對應的分區中,并重新啟動手機。
?
一次燒寫boot,system,recovery分區:
? ? (1)創建包含boot.img,system.img,recovery.img文件的zip包。
? ? (2)執行:fastboot update {*.zip}
?
燒寫開機畫面:
? ? fastboot flash splash1 開機畫面
?
2.重啟系統
fastboot reboot
?
3.不燒寫flash情況下調試
fastboot boot uImage 或者u-boot.bin
?
4.查看版本號
fastboot getver:version
?
5.復位到bootloader
fastboot reboot-bootloader
?
6.命令格式
主機端發送字符串的命令,字符串小于等于64個字節,客戶端首先返回四個字節的內容,是OKAY、FAIL、DATA、INFO之一,隨后跟著是信息或數數據。
?
7.清空分區
fastboot erase {partition} ? 例:fastboot erase boot或fastboot erase system等。
fastboot erase boot
fastboot erase system
fastboot erase data
fastboot erase cache
?
上面的命令也可以簡化成一條命令
fastboot erase system -w
?
8.獲取客戶端(手機端)變量信息
fastboot getvar version:version-bootloader:version-baseband:product:serialno:secure?
version 客戶端支持的fastboot協議版本
version-bootloader ?Bootloader的版本號
version-baseband ? ?基帶版本
product ? ? ? ? ? ? 產品名稱
serialno ? ? ? ? ? ? 產品序列號
secure ? ? ? ? ? ? ?返回yes 表示在刷機時需要獲取簽名
?
支持的參數
偏移和地址在u-boot中定義,要想使用好fastboot,就必須要知道參數名稱與文件的對應關系。
?
?
9.環境變量
fastboot支持環境變量文件,通常在fastboot燒寫nand flash時,會將偏移量和大小寫入環境變量中,命名格式為:
<partition name>_nand_offset
<partition name>_nand_size
?
例如,內核燒寫完成后printenv可以看到:
kernel_nand_offset=0x140000
kernel_nand_size=0x1f70000
?
10.查看USB設備
查看連接到OTG的USB設備情況,lsusb:
Bus 008 Device 030: ID 0451:cafe Texas Instruments, Inc. <----- fastboot
?
更多細節查看cat /proc/bus/usb/devices
?
11.靜態模塊地址
fastboot重用內核的nand地址分配方式,并且大部分是可以變化的,但是下面列出來的這些地址是不變的。
name ? ? ? ? ? ? ? ? offset ? ? ? ? ? ? ? ? size
xloader ? ? ? ? ?0x00000000 ? ? ?0x00080000
bootloader ? ? 0x00080000 ? ? ?0x00180000
environment ?0x001C0000 ? ? ?0x00040000
?
12 .文件大小限制
最大下載文件大小為240M。
?
13.擦除分區:
? ? fastboot erase {partition} ? 例:fastboot erase boot或fastboot erase system等。
?
14 .燒寫指定分區:
? ? fastboot flash {partition} {*.img} ? 例:fastboot flash boot boot.img或fastboot flash system system.img等。
?
15.燒寫所有分區:
? ? fastboot flashall ? 注意:此命令會在當前目錄中查找所有img文件,將這些img文件燒寫到所有對應的分區中,并重新啟動手機。
?
16 .一次燒寫boot,system,recovery分區:
? ? (1)創建包含boot.img,system.img,recovery.img文件的zip包。
? ? (2)執行:fastboot update {*.zip}
?
17.燒寫開機畫面:
? ? fastboot flash splash1 開機畫面
?
18.重啟手機:
? ? fastboot reboot
? ? fastboot reboot-bootloader
?