在大多数高通平台上,默认都提供以下的按键功能:
按住 vol+ 键开机,进入 recovery 模式。
按住 vol- 键开机,进入 fastboot 模式。
按住 vol+ 键及 vol- 键开机,进入 edl(Emergency Download)模式。
高通方案的Android设备主要有以下几种开机模式,Android、EDL、Fastboot、Recovery和FFBM,其进入及退出的方式如下表。
开机模式屏幕显示冷启动热启动按键退出命令退出
Android/Normal
Android界面
按Power键
adb reboot
手机短按,VR长按Power键
adb shell reboot -p(关机)
Recovery/OTA/卡刷
Recovery界面
按住OK键(Vol+)再按Power键
adb reboot recovery
长按Power键重启
adb reboot
Fastboot/线刷
Fastboot界面
按住BACK键(Vol-)再按Power键
adb reboot bootloader
长按Power键重启
fastboot reboot fastboot continue(resuming boot)
FFBM/Fast Factory/厂测/半开机
显示测试列表
misc分区头部为ffbm时按Power键
misc分区头部为ffbm时,adb reboot
长按Power键重启依然进入FFBM
唯一退出方式擦除misc分区
EDL/紧急下载/9008/砖头/裸板
无显示,黑屏
同时按住OK键(Vol+)和BACK键(Vol-)再按Power键
adb reboot edlfastboot reboot emergency
长按Power键重启
无
refs:
https://nihil.cc/posts/qualcomm_edl_key/
https://www.cnblogs.com/schips/p/ways_to_enter_debug_mode_in_qualcoom_android_device.html
https://blog.csdn.net/jinron10/article/details/104691123
fastboot 刷机脚本:flash-all.sh
https://gist.github.com/Lomeli12/73825a287d3cf60414e244aece9b6bdf
#!/bin/bash
reset
set +x
echo "------- LE2117 to LE2115 Conversion Bash Script by Lomeli12@xda -------"
echo "Please make sure you are in bootloader, your screen should say \"Fastboot Mode\" in red."
echo "You should be using the latest Google platform tools from your system's package manager (Apt, Yay, Brew, Scoop, etc)."
echo -e "Do not continue if you are unsure. \n"
# Make sure the user knows the risk and wants to continue
while true; do
read -p "Are you SURE you want to continue? Your warranty will be void and there's always the possibility you can soft-brick your phone (Y/N) " yn
case $yn in
[Yy]* )
break
;;
[Nn]* )
echo "Conversion canceled"
exit
;;
esac
done
# Check if fastboot exists. If not, inform the user how to install it
if [ -z $(which fastboot) ]; then
echo "Something went wrong!"
echo "Please install Google Platform tools to get fastboot."
echo "Debian/Ubuntu: apt install android-tools-fastboot"
echo "macOS: brew install android-platform-tools"
echo "Windows: scoop install adb"
echo "Arch: AUR android-sdk-platform-tools (yay -S android-sdk-platform-tools)"
echo "Conversion canceled"
exit
fi
# Double check we have all the required images
files=( *."img" )
if [ ${#files[@]} -lt 34 ]; then
echo "Something went wrong!"
echo "Your working directory does not contain .img files. Make sure you are executing this script from the payload output directory (where all the .img files are)"
echo "Conversion canceled"
exit
fi
# Begin flashing. Cross your fingers nothing goes wrong
echo "Flashing... Your device will reboot a few times, don't panic"
echo "When reporting errors, make sure to include the output of \"fastboot --version\" and any outputs from this script."
set -x
fastboot flash dtbo dtbo.img
fastboot flash splash splash.img
fastboot flash modem modem.img
fastboot flash oplusstanvbk oplusstanvbk.img
fastboot flash oplus_sec oplus_sec.img
fastboot --disable-verity flash vbmeta vbmeta.img
fastboot --disable-verity flash vbmeta_system vbmeta_system.img
fastboot --disable-verity flash vbmeta_vendor vbmeta_vendor.img
fastboot reboot fastboot
fastboot flash aop aop.img
fastboot flash bluetooth bluetooth.img
fastboot flash dsp dsp.img
fastboot flash dtbo dtbo.img
fastboot flash splash splash.img
fastboot flash modem modem.img
fastboot flash oplusstanvbk oplusstanvbk.img
fastboot flash qupfw qupfw.img
fastboot flash oplus_sec oplus_sec.img
fastboot flash multiimgoem multiimgoem.img
fastboot flash uefisecapp uefisecapp.img
fastboot flash abl abl.img
fastboot flash bluetooth bluetooth.img
fastboot flash cpucp cpucp.img
fastboot flash devcfg devcfg.img
fastboot flash featenabler featenabler.img
fastboot flash hyp hyp.img
fastboot flash imagefv imagefv.img
fastboot flash keymaster keymaster.img
fastboot flash qweslicstore qweslicstore.img
fastboot flash shrm shrm.img
fastboot flash tz tz.img
fastboot flash vendor_boot vendor_boot.img
fastboot flash vm-bootsys vm-bootsys.img
fastboot flash xbl xbl.img
fastboot flash xbl_config xbl_config.img
fastboot reboot fastboot
fastboot flash product product.img
fastboot flash system system.img
fastboot flash system_ext system_ext.img
fastboot flash vendor vendor.img
fastboot flash odm odm.img
fastboot reboot bootloader
sleep 25
fastboot -w
set +x
echo -e "Done! \nPlease reboot to recovery via the menus and wipe everything prior to boot"
read -p "Press any key to continue..."