PTT推薦

[心得] 1+8 用 Fastboot 降級與降級心得

看板MobileComm標題[心得] 1+8 用 Fastboot 降級與降級心得作者
Arbin
()
時間推噓 1 推:1 噓:0 →:2

我手上是拿 1+8 TMO (IN2017) 機型啦

雖然本身其實不用 OOS 12,我用 Evolution X

但是後者搭配 OOS 12 的韌體最近小問題很多

像是螢幕亮度不夠亮、背景偶而會閃爍等等

所以就有了降回 OOS 11 的念頭

但老實說真的很不想碰 MSM Tool,我轉過國際版了

碰了就等於要全部重作...麻煩

所以這次就單靠 Fastboot 解決


不過要靠 Fastboot 也是有些要注意的事情


1. 韌體不對就沒辦法啟動 Recovery

OOS 12 的韌體一定要吃 OOS 12 的 Recovery,或是特別適配過的 Recovery

現在 Fastboot 都做在 Recovery 內了,叫做 fastbootd

沒辦法用 Recovery 就沒辦法刷機

(直接用 Bootloader 的 Fastboot 限制超多,
OOS 12 的韌體只能刷 boot 和 recovery)

所以別想說要降級到 OOS 11 那就用 OOS 11 的 Recovery 好了

這招肯定行不通,別走冤枉路

不過只要 Recovery 內有 fastbootd 就好了,所以也不一定要官方的 Recovery


2. 備份 Persist 和 EFS !!!重要!!!

前者有指紋辨識要用的資料,後者有 IMEI 資訊

都有備份的話可以少很多驚嚇,因為這兩者可能會在這些操作做完之後就丟了

你可以用 TWRP 或是 adb (需要 root) 來備份

這邊就不多做解釋,不過 TWRP 你可能要找可以在 OOS 12 韌體上啟動的版本



好那我們正文開始


降級有幾種途徑,這邊還是稍微介紹一下:

1. 如果你人就在 OOS 12,那直接用官方的方法就好

https://community.oneplus.com/thread?id=1555055

那你其實不是本文閱讀的對象,可以直接看上面就好XD

2. 如果你人不在 OOS 12

你可以用 MSM Tool 降級,或是像我有特殊理由用 Fastboot 降級

那 Fastboot 降級大概就

a. 如果你的網路環境允許,直接下載 OOS 11 Fastboot 包就好

哪裡可以下載?

這裡:

https://forum.xda-developers.com/t/rom-stock-in2011_11_c-21-fastboot-easily-return-method-to-oos-from-custom-roms-or-simply-reflash-oos.4275497/

縮網址:https://reurl.cc/W11Xze

b. 如果你跟我一樣可憐,網路環境不行但是手邊有 OOS 10 的 Fastboot 包
和 OOS 11 的 OTA 包

那一樣可以做,只是要多做一步升級而已

不過做法都大同小異,這邊就講解一下 b 做法



!!! 再三注意 !!!

這做法很有可能造成 Persist 或是 EFS 的資料遺失,導致功能無法使用

本人不對任何行為做出任何責任,請自行評估需求

不然你真的很怕的話乖乖用 MSM Tool 然後全部重做一遍...這是最穩的做法

!!! 再三注意 !!!


那就開始吧

首先下載帶有 fastbootd 的 Recovery,這邊就拿 Evolution X 的 Recovery 來用


https://sourceforge.net/projects/evolution-x/files/instantnoodle/recovery/recovery.img/download

縮網址:https://reurl.cc/O44kev

重開機進入 "Bootloader",然後手機連接電腦,打

fastboot -w

先把你的 userdata 清光光

然後再下

fastboot flash recovery recovery.img

注意這邊的 recovery.img 要改成你下載下來的 Recovery 的映像檔名稱

刷完之後下

fastboot reboot fastboot

讓手機進入 fastbootd 模式

之後準備好你的 OOS 10 (or 11) Fastboot 刷機包,然後下這些指令

fastboot flash abl abl.img
fastboot flash aop aop.img
fastboot flash bluetooth bluetooth.img
fastboot flash cmnlib cmnlib.img
fastboot flash cmnlib64 cmnlib64.img
fastboot flash devcfg devcfg.img
fastboot flash dsp dsp.img
fastboot flash featenabler featenabler.img
fastboot flash hyp hyp.img
fastboot flash imagefv imagefv.img
fastboot flash keymaster keymaster.img
fastboot flash logo logo.img
fastboot flash modem modem.img
fastboot flash mdm_oem_stanvbk mdm_oem_stanvbk.img
fastboot flash multiimgoem multiimgoem.img
fastboot flash odm odm.img
fastboot flash opproduct opproduct.img
fastboot flash qupfw qupfw.img
fastboot flash spunvm spunvm.img
fastboot flash storsec storsec.img
fastboot flash tz tz.img
fastboot flash uefisecapp uefisecapp.img
fastboot flash xbl xbl.img
fastboot flash xbl_config xbl_config.img

此步驟就是將你的韌體降版到 OOS 10 or 11 的韌體

跑完之後再下

fastboot reboot-bootloader

重新回到 Bootloader

這時候你就可以執行 flash-all.bat 了

或是手動下指令也行

像是這樣

fastboot flash boot boot.img
fastboot flash dtbo dtbo.img
fastboot flash modem modem.img
fastboot flash recovery recovery.img
fastboot --disable-verity flash vbmeta vbmeta.img
fastboot --disable-verity flash vbmeta_system vbmeta_system.img
fastboot reboot fastboot
fastboot flash abl abl.img
fastboot flash aop aop.img
fastboot flash bluetooth bluetooth.img
fastboot flash cmnlib cmnlib.img
fastboot flash cmnlib64 cmnlib64.img
fastboot flash devcfg devcfg.img
fastboot flash dsp dsp.img
fastboot flash featenabler featenabler.img
fastboot flash hyp hyp.img
fastboot flash imagefv imagefv.img
fastboot flash keymaster keymaster.img
fastboot flash logo logo.img
fastboot flash mdm_oem_stanvbk mdm_oem_stanvbk.img
fastboot flash multiimgoem multiimgoem.img
fastboot flash odm odm.img
fastboot flash opproduct opproduct.img
fastboot flash qupfw qupfw.img
fastboot flash spunvm spunvm.img
fastboot flash storsec storsec.img
fastboot flash tz tz.img
fastboot flash uefisecapp uefisecapp.img
fastboot flash xbl xbl.img
fastboot flash xbl_config xbl_config.img
fastboot flash system system.img
fastboot flash vendor vendor.img
fastboot flash product product.img
fastboot reboot

其實這就只是把 flash-all.bat 的內容照貼,因為我的電腦用 Linux,讀不懂 bat 檔案

只能這樣複製貼上

上面這是 OOS 10 的 Fastboot 刷機包的內容

OOS 11 可能順序會不一樣,要自己去看

這些跑完之後就會進入舊版 OOS 系統了


如果你是 OOS 11 那其實你已經做完了

那如果你跟我一樣是用 OOS 10 的話,這樣做完會發現

幹,我的 SIM 卡怎麼讀不到?!?!?!

去關於手機那邊看,基頻未知

心裡os:靠北完蛋了...

我當下真的很緊張,因為那時候手邊只有一隻手機

如果這個節骨眼要把手機送修那就靠北了...


不過後來死馬當活馬醫

準備好 OOS 11 OTA 檔案

然後去設定->系統->系統更新->本地升級

把那包 OTA 檔案餵進去,升級到 Android 11 之後又可以讀到 SIM 卡了

原因不明,估計是版本跨距太大,EFS 內的格式 OOS 10 吃不到


如果直接降刷 OOS 11 的話應該不會有這問題,不過也無法保證就是

啊如果你真的想要 OOS 12 直接往下衝到 OOS 10 那你可能會遇到這問題

這邊就留個經驗給後面遇到類似狀況的人試試看

不過基頻噴掉的話,MSM Tool 因為會檢查 IMEI 所以會跑不起來,有點傷腦筋

這部份我還是不知道要怎麼解決,求高手解答



也給自己學個教訓,應該要去網路穩定的地方做這些事情

就不會有這些節外生枝

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 106.107.177.185 (臺灣)
PTT 網址

javid4ever08/15 08:17以我之前把oos 10的每個fastboot 包都用msm tool刷過

javid4ever08/15 08:17一遍的經驗來看,不是每個版本都會掉基帶,但也不是每

javid4ever08/15 08:17次都會成功就是了,奇妙的一加