文章插圖

文章插圖
創作立場聲明:本文由于自身的局限性 , 可能有些內容不夠準確 , 還望大家多多指正 , 期待深入探討 。
2018 年我第一次接觸刷機 , 初出茅廬的我為我的小米平板 1 刷上了系統 Lineage OS 15.1 , 并寫下了 使用 Mac 為小米平板刷 lineage OS 。彼時自己對于刷機這個過程頗為生疏 , 只是小心翼翼的按照教程一步一步操作 , 生怕有一絲一毫不一致的地方 , 而其背后每一步驟的原因卻無從得知 , 故有意撰此文 。一方面讓準備刷機的人多一個教程可以參考 , 另一方面藉此機會充實自己 , 了解一些 Android 開發知識 , 也算是滿足自己的好奇心罷 。
出于知識內容所限 , 本文僅討論線刷模式 , 不討論卡刷模式 。
配置 Android SDK 的環境變量
SDK 的全稱叫做軟件開發工具包 (Software Development Kit) , Android SDK 里面包含安卓軟件的開發工具 , 這些開發工具均在 SDK 的安裝目錄下 , 擁有它們我們才能對 Android 中的軟件進行安裝、卸載等相關操作 。當我們在終端輸入指令要求啟動某個工具或應用程序時 , 系統會優先在當下的目錄中進行查找 , 如果沒有則會在系統 Path 指定的路徑下進行查找;而我們配置環境變量的這個過程 , 就是把 SDK 的安裝目錄記錄在系統 Path 的指定路徑中 , 讓我們在終端能夠直接使用 SDK 中的開發工具 。該過程也叫做配置 ADB (Android Debug Bridge) 環境變量 。
Mac 系統下的環境變量配置
參見:使用 Mac 為 Android 手機刷原生系統
Windows 系統下的環境變量配置
Windows 系統下由于其系統特點 , 目前(我知道的)有三種方案 , 將在以下展開 , 三種方法均適用于 Windows 10 系統 , 其他系統可能有些出入 , 讀者可部分參考 。
方案一:配置環境變量
參見:win10 如何配置 Android 開發環境變量
該方案和 Mac 系統下環境變量配置的原理一致 , 都是對系統進行操作 。雖看起來步驟多 , 好處就在于一勞永逸 , 一次配置「終身」受用 , 除非你重裝了系統 , 個人優先推薦該方法 。
方案二:快速安裝與使用 ADB
1 將 platform-tools 數據包解壓 , 進入解壓后的文件夾 , 按住 Shift 鍵的同時在空白處單擊鼠標右鍵 , 選擇「在此處打開命令窗口」(在 Win 10 創意者更新中被改為「在此處打開Powershell窗口」);2 輸入 adb version 檢測環境變量配置是否完成;這個方案相當偷懶 , 其實這個步驟并沒有實現系統的環境變量配置 , 只是提供了一個臨時的環境 , 但是無論如何這個方法是最方便的 , 而且對于新手而言非常友好 。
方案三:直接訪問 SDK 目錄
1 將 platform-tools 放在一個接近硬盤根目錄如 C:adb 這樣的地方便于訪問 , 這時我們需要訪問的目錄為 C:adbplatform-tools;2 在運行命令窗口中輸入 cmd 打開命令符窗口 , 并按下回車執行;3 輸入 cd adbplatform-tools , 并按下回車執行 , 進入目錄;4 輸入 adb version 檢測環境變量配置是否完成 。該方案和方案一比較像 , 都是偏向于臨時解決環境配置問題 , 但是都沒有實現系統的環境變量配置 , 因此每次使用時都要重新訪問一次 SDK 的所在目錄 。
該方案看似簡單、容易操作 , 但弊端明顯 , 只有你在進入該目錄的情況下 , 才符合「環境變量已配置」的條件 , 不建議沒有代碼基礎的人操作 。
解鎖 Bootloader
一般而言 , 每個 Android 設備都會有 Fastboot / Bootloader 模式 , 它是負責引導操作系統內核啟動的引導程序 , 只有在該模式是無鎖的情況下 , 我們才能自由的 root 我們的設備、自定義或安裝一個更加好用的第三方 ROM 固件 , 否則很容易損傷設備 。與封閉的 iOS 系統不同 , Android 系統是開源的 , 因而相應的各大廠商所開發的 Fastboot / Bootloader 模式也各有不同 。盡管系統是開源的 , 但是各廠商為了對自己的設備有著更多的支配權 , 多數情況下都會對其 Fastboot / Bootloader 模式上鎖 。這就是為什么我們在刷機教程里經??吹?「Bootloader 解鎖」這一步了 。
Bootloader 解鎖通用步驟打開「開發者選項」 , 不同設備打開的方式不同 , 請讀者根據自己設備機型自行百度一下;先后打開「USB 調試」與「啟用 OEM 解鎖」(沒有「啟用 OEM 解鎖」選項的設備則不用理會) , 該過程需要滿足網絡流(ke)暢(xue);進入 Bootloader 界面等候;打開 Terminal / CMD , 輸入 Bootloader 解鎖指令 , 并按下回車執行;如果你的設備為 Android 5.0 及以下 , 則解鎖指令為 fastboot oem unlock ;如果你的設備為 Android 6.0 及以上 , 則解鎖指令為 fastboot flashing unlock;在設備端此時會彈出 Bootloader 解鎖的確認界面 , 使用音量鍵移動關標選擇確認 , 按下電源鍵開始解鎖;解鎖后設備會被清除數據并重新啟動 , 待設備開機后檢查「USB 調試」選項;重新進入 Bootloader 界面等候;注意事項解鎖 Fastboot / Bootloader 模式后 , 可能會使保修相關服務失效;解鎖 Bootloader 的過程中 , 可能會還原設備一切資料 , 切記在此前做好資料備份工作;解鎖 Bootloader 的過程中 , 有一定損壞設備的風險;該 Bootloader 解鎖方式大體上對于 Android 設備通用 , 但是鑒于各廠商 Android 設備差異實在太大 , 建議如果有官方解鎖通道就先去申請官方解鎖 , 沒有解鎖通道再嘗試該方法 。當然對于從來沒有放開 Bootloader 解鎖權限的品牌(可自行百度) , 還是該放棄放棄吧 。刷入第三方 Recovery
設備一般都會自帶一個官方初始的一個 Recovery , 其作用主要用于恢復出廠設置與OTA安裝/升級 , 但是由于官方 Recovery 不能識別第三方 ROM , 而第三方 Recovery 卻可以 , 所以我們一般在刷機之前都會先刷入第三方 Recovery。目前比較推薦的第三方 Recovery 是 TWRP , 該項目是一個社區開源項目 , 掛載在 GitHub 上 。也許你會發現之前也有人推薦過 CWM , 很遺憾的是 , 該項目已于2014年停止了維護 , 如果你用的設備型號比較老的話 , 可能會用到它 。
刷入第三方 Recovery 的通用步驟準備好設備匹配的第三方 Recovery 版本 , 后綴為.img;重啟手機至 bootloader 模式 , 電腦端運行 Terminal/CMD;輸入 cd 你的第三方 Recovery 文件路徑 , 并按下回車執行 , 以此來定向第三方 Recovery 的文件位置 , 接著輸入 fastboot boot xxx.img(xxx 為具體的文件名) , 并按下回車執行 , 此時 Recovery 已經刷入 , 手機會重啟至 Recovery 相應界面 。注意事項
該過程中需要定向 Recovery 的位置 , 故而如果你在 Windows 系統下的環境變量配置時用的是方案三 , 在這里會比較麻煩 , 解決方法是把你的第三方 Recovery 文件放在 platform-tools 目錄下 , 讓兩個目錄一致 。
類原生 Android 系統 ROM 推薦Lineage OS
Lineage OS 是 Android 的最大售后市場分銷 , 以前稱為 CyanogenMod 。2016年開源項目 CyanogenMod 被宣布停止 , 被復刻為 Lineage OS , 由原團隊 CyanogenMod 繼續開發 , 源代碼于 GitHub 可用 。
Resurrection Remix OS
Resurrection Remix OS 基于 LineageOS 15.1 , 包含大量附加功能和定制選項 。因為它提供了許多功能 , 所以成為了 Android 設備最受歡迎的自定義ROM , 源代碼于 GitHub 可用.
crDroid
crDroid 基于 Lineage OS , 在此基礎上附加其他性能調整和額外功能 , 源代碼于 GitHub 可用 。
Pixel Experience
Pixel Experience 基于 Android 開源項目 (AOSP) 與 Code Aurora 項目(CAF)開發 , 由于 Pixel Experience 中包含谷歌全家桶 , 故而相比與其他 ROM 包來說要大些 , 源代碼于 GitHub 中可用 。
Paranoid Android
Paranoid Android 的制作團隊就是 Oxygen OS 的制作團隊 , 該制作團隊的核心成員被 Oneplus 聘請 , 為 Oneplus 做 ROM 開發 , 源代碼于 GitHub 中可用 。
【Android基礎 Android教程 android基礎入門教程】AOSPEXTENDED ROM
AOSPEXTENDED ROM 基于 Android 開源項目 (AOSP) 開發 , 它提供了各種自定義特性和底層主題引擎 , 源代碼于 GitHub 中可用 。
XOSP
XOSP 是基于 CyanogenMod 13 的 ROM , 混合了很多 Xperia 的特性 , 帶來不一樣的感受 。因為是 Xperia + AOSP 的混合體 , 因此命名為XOSP 。
魔趣 ROM
魔趣 ROM 基于 Android 開源項目 (AOSP) 開發 , Slogan 是「可能是中國最好的安卓開源系統」 , 源代碼于 GitHub 可用 。
總結
這些是我這些天各種查資料總結到的 , 由于個人能力與知識水平所限 , 會存在一些不足之處 。如前輩們發現文中有錯漏的問題 , 誠求各位不吝賜教 。
附錄常用 ADB 命令
- python自帶的idle教程 python.idle
- mac如何拆機 macbook小白拆機教程
- mysql jar包下載安裝教程 java導入mysql驅動包
- android狀態欄高度是多少 安卓手機界面狀態欄尺寸
- 南方cass教程新手入門 南方CASS教程
- js href跳轉 jsp href 跳轉
- 各種單片機的優缺點 holtek 單片機教程
- autocad2019激活教程 autocad2020激活教程
- wordpress主頁制作 wordpress建網站詳細教程
- jquery插件使用教程 jquery插件的使用方法
