Pixel 3 完美支持中國電信

語言: CN / TW / HK

其實很多帖子都在説“完美”支持中國電信,然而什麼是真正的“完美”呢,只要不是將電信卡插上就用,我想都不算是“完美”吧。本篇方法所説的“完美”主要是指,在支持了電信的情況下,仍然能夠無痛或者微痛的進行 OTA 升級。

本方法有兩個步驟,首先安裝 Magisk,然後使用一個叫作 chinese_sim_supporter 的 Magisk 模塊來開啟中國電信支持。

注意:本方法只在 Pixel 3 的 Android 10 版本上進行過測試,其它機型或者版本,理論上雖也可行,但具體操作方法會有出入,不要一味套用。

  1. Magisk

    前文 之中我記錄過一種 Magisk 的安裝方式,是通過 TWRP 來進行。但由於 TWRP 對於 Android 10 遲遲未有支持, 所以這裏需要更換一種方式。 另外在使用 TWRP 進行原 Android 9 系統備份的時候,出現了一個錯誤 “createTarFork() process ended with ERROR: 255”,這裏也稍帶提一下,由於我使用了 "work profile" 所以系統中存在兩個用户,需要 關閉 work profile ,另外需要將手機的解瑣碼關掉。相關 bug 參考 這裏這裏

    • http://github.com/topjohnwu/Magisk/releases 下載最新版本的 Magisk Manager 應用,並安裝到手機上。
      adb install MagiskManager-v7.5.1.apk
    • http://developers.google.com/android/images 下載 Pixel 3 對應的最新 Android 鏡像解壓提取 boot.img 上傳至手機
      unzip blueline-qq1a.200205.002-factory-25feefff.zip
      cd blueline-qq1a.200205.002
      unzip image-blueline-qq1a.200205.002.zip
      adb push boot.img /sdcard/Download/
    • 手機上打開 Magisk Manager 應用程序,選擇 Magisk is up to date 後面的 INSTALL ,依次選擇 Install -> Install -> Select and Patch a File 。Magisk 會生成一個自動修改過的鏡像文件放在位置 /sdcard/Download/magisk_patched.img 。將該文件複製到電腦
      adb pull /sdcard/Download/magisk_patched.img
    • 將 Magisk 修改過的鏡像文件刷入手機
      adb reboot bootloader
      fastboot flashing unlock
      fastboot flash boot magisk_patched.img
      fastboot reboot

    注意:在做完一切更改之後,有些人會想要重新鎖上系統,即 adb flashing lock ,這裏強調一下這是不行的,因為鎖手機的操作會將手機內核重置回原廠。以上就白做了。另外,不同的手機安裝 Magisk 的步驟是不一樣的,還是要參照 Magisk 官方文檔 才對。

  2. chinese_sim_supporter

    其實前文中提到的機鋒帖子 http://bbs.gfan.com/android-9535442-1-1.html 已經提供過一個 Magisk 的模塊的方法,但是經過調查以後,發現那個模塊寫得還不夠完美,所以我參照 Magisk 的文檔對模塊進行了一下正規化的工作,產生了本文這個新模塊。機鋒帖子裏還需要手動下載模塊交給 Magisk 來安裝,這裏我寫的這個模塊則已被 Magisk 官方接受在 官方模塊庫 之中,在 Magisk 應用當中可以直接找到並安裝,另外機鋒帖子裏安裝完 Magisk 模塊還需要手動刪除一個叫 fdr_check 的文件,我這裏也不再需要。

    打開手機上 Magisk Manager 應用,在菜單裏選擇 Downloads 找到一個叫 Chinese SIM Supporter 的模塊,點擊後面的下載按鈕等待安裝完成然後點擊重啟即可。重啟過後試一下中國電信的支持,應該已經打開。

  3. OTA 升級

    在打開中國電信的支持之後,這裏着重説一下如何進行 OTA 升級。主要是 Magisk 能夠在保留對系統的更改的前提下騙過系統更新程序。其核心原理是,Magisk 將自己的修改從手機上暫時抹去,但是保持手機不重啟,所以 Magisk 仍然存活在系統內存當中,此時進行 OTA 升級系統將發現手機的軟件與原廠一致從而勝利升級完成。升級完成之後仍然不重啟系統,使用內存中的 Magisk 應用將 Magisk 的更改再重新落實到手機存儲上,之後再重啟。原文檔鏈接 http://topjohnwu.github.io/Magisk/tutorials.html 。步驟如下:

    • 在手機 Settings -> System -> Develop Options 之中關閉 Automatic System Updates ,這樣系統不會自動進行 OTA 更新,便於介時人工干預。
    • 當 OTA 更新來到時,先打開 Magisk Manager 應用,點擊 UNINSTALL 選擇 Restore Images ,暫時卸載 Magisk。
    • 依次進入 Settings -> Systems -> System Update 進行 OTA 升級,升級完成之後不要重啟系統。
    • 回到 Magisk Manager 應用,依次選擇 Install -> Install to Inactive Slot
    • 最後重啟系統