android开发笔记之fastboot的使用

原创 2015年07月07日 11:46:27

fastboot命令大全

在终端中,我们输入:

fastboot

这里写图片描述

对于这些命令,我不解释,慢慢使用,慢慢的就会明白是怎么回事了。

android分区

分区 作用
splash1 开机画面,使用Nandroid backup备份系统后的文件为splash1.img
recovery 该分区是恢复模式(即开机按Home+power进入的界面),使用Nandroid backup备份为recovery.img
boot 内核启动分区,使用Nandroid backup备份为boot.img
system Android系统部分,目录表示为/system,通常为只读,使用Nandroid backup备份为system.img
cache 缓存文件夹,目录表示为/cache,事实上除了T-mobile的OTA更新外,别无用处,使用Nandroid backup备份为cache.img
userdata 用户安装的软件以及各种数据,目录为/data,使用Nandroid backup备份为data.img

将fastboot复制到/usr/bin/目录

以后我们就可以直接使用fastboot命令了,而不需要每次都进入到fastboot目录下,这个非常的方便:
(fastboot文件目录:baselinetwo/LINUX/android/out/host/linux-x86/bin)
将fastboot放到usr/bin目录下的命令:

sudo cp fastboot /usr/bin/

烧录boot.img

有时候,我们user版本的软件出现了一些bug,但是我们要对这个bug进行调试分析,但是要保留bug现场的数据。那么这个时候我们可以使用fastboot将eng版本的boot.img文件烧入到手机中,就可以进行调试分析,并且还不会删除手机现在的内容。

adb reboot bootloader
sudo ./fastboot flash boot out/target/product/l9010/boot.img
sudo ./fastboot reboot

单独烧录fsg.img的一个样例

烧录fsg.img前要清除fsg,fsc,modemst1,modemst2的数据,再刷fsg.img

adb reboot bootloader
fastboot erase fsg
fastboot erase fsc
fastboot erase modemst1
fastboot erase modemst2
fastboot flash fsg fsg.img
fastboot reboot

刷开机LOGO图片

//网上流传的命令
sudo fastboot flash splash1 splash.bin
//高通M8909平台生效命令
sudo fastboot flash splash splash.bin

刷机时的几个关键命令

adb reboot bootloader
fastboot devices

fastboot flash aboot out/target/product/$BUILD_PROJECT_NAME/emmc_appsboot.mbn
fastboot flash boot out/target/product/$BUILD_PROJECT_NAME/boot.img
fastboot flash system out/target/product/$BUILD_PROJECT_NAME/system.img
fastboot flash userdata out/target/product/$BUILD_PROJECT_NAME/userdata.img
fastboot flash persist out/target/product/$BUILD_PROJECT_NAME/persist.img
fastboot flash recovery out/target/product/$BUILD_PROJECT_NAME/recovery.img

fastboot reboot

fastboot 简单脚本:

为了避免一个一个命令的输入,非常的麻烦,我写了一个非常简单的脚本:

fastboot_hexiaoming.sh

adb reboot bootloader
sudo fastboot devices

sudo fastboot flash aboot emmc_appsboot.mbn
sudo fastboot flash boot boot.img
sudo fastboot flash system system.img
sudo fastboot flash userdata userdata.img
sudo fastboot flash persist persist.img
sudo fastboot flash recovery recovery.img

sudo fastboot reboot

这个脚本的使用方式:
我到进入到目录:baselinetwo/LINUX/android/out/target/product/project*****/

执行命令:

source '/home/android/desttop/fastboot_hexiaoming.sh' 

再输入root密码,就可以直接刷机了。

一位同事写的的fastboot脚本

fastboot_load.sh

#!/bin/sh

SRC_DIR=$PWD
BUILD_FILE=$0
BUILD_PROJECT_NAME=$1

BUILD_BOOT_DIR=$SRC_DIR/boot_images/build/ms
BUILD_MODEM_DIR=$SRC_DIR/modem_proc/build/ms
BUILD_RPM_DIR=$SRC_DIR/rpm_proc/build
BUILD_TZ_DIR=$SRC_DIR/trustzone_images/build/ms
BUILD_AP_DIR=$SRC_DIR/LINUX/android
BUILD_COMMON_DIR=$SRC_DIR/common/build
BUILD_MODEM_SRC_DIR=$SRC_DIR/modem_proc

function usage()
{
    echo ""

    echo "******************************************************************************************************"
    echo "* Usage:                                                                                             *"
    echo -e "*\033[31m $BUILD_FILE  <product name>\033[0m*"
    echo "*                                                                                                    *"
    echo "******************************************************************************************************"
    echo ""

    echo "Build product name are:"
    echo -e "\033[31m1.l5510\033[0m"
    echo -e "\033[31m2.l5320\033[0m"
    echo -e "\033[31m2.l9010\033[0m"
    echo ""
}

if [ -z "$BUILD_PROJECT_NAME" ] ; then
    usage;
else # whole

if [ $BUILD_PROJECT_NAME = "l5320" ] ; then
echo 'it is l5320'
fi

adb reboot bootloader
fastboot devices

fastboot flash aboot out/target/product/$BUILD_PROJECT_NAME/emmc_appsboot.mbn
fastboot flash boot out/target/product/$BUILD_PROJECT_NAME/boot.img
fastboot flash system out/target/product/$BUILD_PROJECT_NAME/system.img
fastboot flash userdata out/target/product/$BUILD_PROJECT_NAME/userdata.img
fastboot flash persist out/target/product/$BUILD_PROJECT_NAME/persist.img
fastboot flash recovery out/target/product/$BUILD_PROJECT_NAME/recovery.img

fastboot reboot
fi #whole

脚本使用命令:
我们先进入到目录:codebase/cts_9010/baselinetwo/
然后执行命令:

sudo ./fastboot_load.sh l9010

fastboot刷eMMc

直接使用系统脚本

1.将USB线插入目标终端。确保手机处于fastboot模式
2.在Linux上,运行以下命令:
sudo fastboot devices
将显示已注册终端的列表
3.一旦检测到终端,即可将二进制文件刷入到目标终端中。以下命令可以一次性运行所
有Fastboot步骤。

cd <target_root>/common/build
fastboot_complete.py

fastboot命令

fastboot flash modem <path to NON-HLOS.bin> or <path to APQ.bin>
fastboot flash sbl1 <path to sbl1.mbn>
fastboot flash rpm <path to rpm.mbn>
fastboot flash tz <path to tz.mbn>
fastboot flash devcfg <path to devcfg.mbn>
fastboot flash dsp <path to adspso.bin>
fastboot flash adsp <path to dsp2.mbn>
fastboot flash aboot <path to emmc_appsboot.mbn >
fastboot flash cmnlib <path to cmnlib.mbn >
fastboot flash cmnlib64 <path to cmnlib64.mbn >
fastboot flash keymaster <path to keymaster.mbn >
fastboot flash boot <path to boot.img>
fastboot flash system <path to system.img>
fastboot flash userdata <path to userdata.img>
fastboot flash persist <path to persist.img>
fastboot flash recovery <path to recovery.img>
fastboot flash cache <path to cache.img>

要生成fastboot编程支持的所有fastboot分区的列表,可参见
LINUX/android/bootable/bootloader/lk/platform/msm_shared/mmc.c中的源代码。

直接进入9008端口,下载模式

刷机时,我们经常是要进入9008端口,下载模式,

adb reboot edl
版权声明:本文为博主原创文章,未经博主允许不得转载。

Android - fastboot命令的简单说明

1.重启: $ fastboot reboot 2.刷所有分区:以下命令会在当前目录寻找各种所有的image文件,并且在刷完所有分区后重启手机 $ fastboot flashall 3.刷指...
  • cnmilan
  • cnmilan
  • 2014年07月29日 14:27
  • 1762

android adb 命令进入fastboot 两种方法

第一种方法: 在关机的情况下,同时按下power键和音量键,在boot驱动界面 手机插上USB线,进入CMD命令: fastboot devices   第二种方法: 手机开启来后,手机插上...
  • u010824252
  • u010824252
  • 2014年02月27日 13:27
  • 5644

使用fastboot命令刷机流程详解

首先需要准备好刷机包,可以是自己编译的,也可以是从别处拷贝的,但一定要确保刷机包适用于你的 Android 设备。然后解压刷机包,解压后我们可以得到 boot.img、recovery.img、s...
  • a332324956
  • a332324956
  • 2017年02月16日 15:38
  • 3393

ANDROID fastboot刷机傻瓜教程

http://hi.baidu.com/linkerpeak/item/b186eec4233d987089ad9ea1 下面把我自己总结的一些方法写出来,希望能给广大G友在刷机路上助一臂之...
  • jdsjlzx
  • jdsjlzx
  • 2013年07月08日 20:38
  • 1785

使用fastboot烧Android系统版本

当修改一个Android.mk的文件后,发现找不到应该单独编译某个模块时,我们将不得不选择耗时较长的全编。 全编之前的准备功能:最好将项目的out目录删除掉,虽然这样编译会比较慢。但好处是可以确保修改...
  • eoeAndroida
  • eoeAndroida
  • 2014年12月03日 11:26
  • 1928

emmc_appsboot.mbn生成

(1)Device/yulong/common/generate_extra_images.mk   456 includebootable/bootloader/lk/AndroidBoot.m...
  • zll5258
  • zll5258
  • 2016年03月26日 10:19
  • 2570

fastboot刷机脚本

  • 2013年10月14日 15:33
  • 364B
  • 下载

fastboot脚本

  • 2015年05月12日 11:36
  • 157KB
  • 下载

Fastboot使用详解

文章出处:http://blog.csdn.net/geniusmen/article/details/7892398 1.Fastboot简介 Fastboot是Android快速升级的...
  • ylyuanlu
  • ylyuanlu
  • 2014年03月01日 10:36
  • 42626

高通平台EFS的制作

用来制作EFS的机器称为A,用来验证EFS的机器称为B。 1.在modem_proc/core/storage/efs/inc/fs_config_i.h中增加以下三行: #ifndef FEATUR...
  • armfpga123
  • armfpga123
  • 2017年05月19日 14:37
  • 1484
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android开发笔记之fastboot的使用
举报原因:
原因补充:

(最多只允许输入30个字)