{%hackmd @cimeesia/H18RVTzeK %} [TOC] # Flash LineageOS 18 to my Xperia Z3 家母 N 年前所使用的 Sony Xperia Z3 (D6653) 早已生灰塵已久,索性拿來用,也因為 Android 6 太遠古了(嫌棄),所以想刷新 OS 。 原先這次沒打算要寫得很詳盡,因為前面兩篇關於如何 root 以及如何刷 ROM 的文章都已經寫得很清楚了。 - [Root my Galaxy S8](/@ViafaSia/HJLGq0BXc) - [Install Android 12 on my Galaxy S8](/@ViafaSia/H1VxeOjXq) 但後來找半天,找不到支援 Android 11 的 TWRP Recovery ,找半天只找到 [XDA 上的非官方版本](https://forum.xda-developers.com/t/twrp-3-3-1-z3-build-2020-02-12.4064999/) ,而這個版本的 TWRP Recover 只能支援到 Android 10 。 所以最後決定使用 LineageOS 的 Recovery ,基本上算是 LineageOS 全家桶了, OS, Recovery 以及 GApps 都從 LineageOS wiki 上取得。 順帶一提,Xperia Z3 的 LineageOS 18 是 Nightly 版本,所以我也不知道會不會很不穩定XD ## Ref - [Install LineageOS on z3 | LineageOS Wiki](https://wiki.lineageos.org/devices/z3/install) ## Tool - [Flashtool](http://www.flashtool.net/index.php) - Used for flashing firmwares for all Sony devices - [XperiFirm](https://forum.xda-developers.com/t/tool-xperifirm-xperia-firmware-downloader-v5-6-5.2834142/) - Used for downloading firmware of all Sony devices - The firmware I needed is `Build 23.5.A.1.291` which is an update that Taiwan did not receive eventually. In this firmware update, included an update for "bootloader" which is what we needed for flashing "newer Recovery". - [Android Debug Bridge](https://developer.android.com/studio/command-line/adb) - For unlocking bootloader, and sideload Recovery and OS. - [LineageOS 18.1 (Nightly) and Recovery for Xperia Z3](https://wiki.lineageos.org/devices/z3/) - AOSP Version: 11 - [MindTheGapps](https://wiki.lineageos.org/gapps) - Magisk ### Boot #### Recovery Mode 在關機的情況下,同時按著以下兩個實體按鈕,直到手機發出震動,即可放開按鈕。 - Volume Down button - Power button #### Bootloader/Fastboot/Download Mode 在裝置關閉的情況下,按著 Volume Up button 不放,在此同時將手機與電腦連接。 當 Fleshing progress 開始的時候立刻放開按鈕,要盡快,以避免其他差錯。 ## Walkthrough 整體流程全部按照 LineageOS wiki 上的指引,也就是前面 [#Ref](#Ref) 貼的那篇,這篇 [#Walkthrough](#Walkthrough) 基本上算是記錄我在過程中遇到的各種大大小小的疑難雜症,所以通篇不只是看起來像是跳步驟,而是確實就是跳步驟,請千萬不要跟著這篇走! ### Trobleshooting 1: Device Driver 按照步驟來到說明中的 Special Requirements 的第一個步驟,安裝 Flashtool 的部分。 安裝的時候,按照他說的,到 driver 中進一步安裝 Device Driver ,但結果失敗了;而問題出在於那些 Device Driver 都是未經簽名的 Driver ,所以 Windows 把它擋了下來。 解決的辦法是,到設定中將 Windows 的保護機制給關閉,就可以正常安裝了。 以 Windows 10 系統為例 1. Setting - Upgrade & Security - Recovery - Section: 'Advanced startup' - Button: 'Restart now' 2. Choose an option - Trobleshoot - Advanced option - Startup Setting - Button: 'Restart' 3. Startup Settings - Disable driver signature enforcement (F7) 順帶一提,整個 Flashtool 的 Driver 之中,我安裝了以下數個 Driver : - Flashmode Drivers - Fastboot Drivers - Common drivers Rhine board - Description: "Common ADB drivers for Rhine board devices based on MSM8974 chipset: Xperia Z Ultra, Z1, Z1 Compact, Z1s." - Xperia Z3 Device Driver 之所以安裝 Common drivers Rhine board 單純是因為 Board 與 Xperia Z3 相同,保險起見我就還是安裝了;到時候沒用到也不打緊,就怕需要的時候卻沒有。 然後是,幫我解決問題的影片是這個: - [How to fix error Sony Flashtool driver installation on Window 8 and Window 10](https://youtu.be/XRHS17x29uE) ### Trobleshooting 2: Damn Windows Defender 這倒是小事,當我啟動 Flashtool 時,他和 Github 有連線,而且和手機之間也有傳輸一些資料,雖然我不知道是什麼,但總之 Windows Defender 跳出來阻擋某個東西。 總而言之,在這期間我是把 Defender 給關了,免得他干擾後續的事情。 ### Trobleshooting 3: Flashtool Lineage 官方說明中提供的 Flashtool 版本太舊了,它內建的 XperiFirm 會無法連線到作者的伺服器,所以我需要另外自行下載獨立的 XperiFirm 來下載我需要的 Firmware 。 ### Trobleshooting 4: XperiFirm Version too old... again 如題,對,我下載了一個錯的版本,所以打開介面會一片空白,並且出現以下字樣。 > ERROR: Failed to connect to the server. Check your internet connection and/or proxy settings. 連線會失敗... 總之下載最新版就可以了。 - [is XperiFirm's server down or i'm the only one?](https://www.reddit.com/r/SonyXperia/comments/mb0hsr/comment/grvl032/) - [[TOOL] XperiFirm ~ Xperia Firmware Downloader [v5.6.5]](https://forum.xda-developers.com/t/tool-xperifirm-xperia-firmware-downloader-v5-6-5.2834142/) ### Trobleshooting 5: Firmware Version Difference 各種版本後面附加的 R__D 和 Firmware 並沒有實質上的關聯性,任意選擇一個版本即可。 - [which is better to download 23.5.A.0.575/R2D or 23.5.A.0.575/R3D](https://forum.xda-developers.com/t/which-is-better-to-download-23-5-a-0-575-r2d-or-23-5-a-0-575-r3d.3443592/) 順帶一提,這才發現,原來之所以會需要自行安裝的原因是,台灣並沒有接收到這個最後追加的更新,台灣的 Xperia Z3 使用者如果需要的話,都必須要自行下載其他國家的 Firmware 並且自行更新。 ![](https://i.imgur.com/9OWpg7V.png) 不怎麼重要但還是寫一下,我這邊選擇了 NZ 版本,反正這只是過渡,用來更新我的 bootloader 而已,這個 NZ 版本的 Android 6 等等還是會被刷掉。 Flashing 的流程另外有參考這篇,有圖片比較方便一點。 - [Re: [情報] Z3 系統更新 23.5.A.1.291 (刷機流程教學)](https://www.ptt.cc/bbs/Sony-style/M.1479303537.A.C24.html) ### Trobleshooting 6: Command failed on unlocking bootloader LineageOS 的官方教學中沒詳細點出來,但總之仔細看了說明後才知道我們拿到的 unlock_code 前面要加上 0x 才能正確作用。 ``` fastboot oem unlock 0x<unlock code> ``` - [How to unlock bootloader](https://developer.sony.com/develop/open-devices/get-started/unlock-bootloader/how-to-unlock-bootloader/) ### Trobleshooting 7: Unclear Instruction of Fleshing Recovery 官方文件和我們說下載好 Recovery 之後要 Flash 他,但是外行人如我不知道應該要把映像檔放在哪個資料夾中(路徑),所以另外看了這篇文章的指示。 - [How to Flash Recovery Image Using ADB and Fastboot](https://techrrival.com/flash-recovery-adb-fastboot/) ``` fastboot flash recovery c:\lineage-18.1-20220421-recovery-z3.img ``` ### Trobleshooting 8: Flashing progress stuck at 47% 47% 是沒有問題的,這是 adb 本身的問題,如同官方說明所述。 總之就是個很驚悚,但實際上沒有問題的情況... > serving: `c:\lineage-18.1-20220421-nightly-z3-signed.zip` (~47%) adb: failed to read command: No error OS 安裝完成後,後續的 GApps 和 Magisk 也是同樣使用 sideload 的方式安裝。 ### Trobleshooting 9: Flashing GApps failed 第一次安裝 GApps 我是選用 NikGApps ,因為先前我的 Galaxy S8 就是因為嘗試了 BitGApps 和 FlameGApps 都失敗,最後選用 NikGApps 才成功。 然而這次在 Xperia Z3 上,第一次選用 NikGApps ,第二次選嘗試 FlameGApps 都失敗。 而最後我是採用 LineageOS 提供的 MindTheGapps 才成功。 - [Google apps | LineageOS Wiki](https://wiki.lineageos.org/gapps) ## End 筆記一下 sideload 的指令 把檔案放在 C 槽根目錄比較方便些 ``` adb sideload c:\lineage-18.1-20220421-nightly-z3-signed.zip ``` ``` adb sideload c:\MindTheGapps-11.0.0-arm-20220217_095902.zip ``` ``` adb sideload c:\Magisk-v24-1.zip ```