官术网_书友最值得收藏!

1.3 移動設備環境準備

1.3.1 刷機

在安卓逆向的學習中,提及基礎一定不能錯過刷機,而在刷機之前,一定要準備一臺測試機,這里筆者推薦Google官方的Nexus系列和Pixel系列的測試機。之所以推薦Google原生系統,是因為Google官方不僅提供了鏡像,而且在對應的源碼網站上能夠找到相應鏡像的全部源碼,在國內Android市場,比如華為、小米等公司實際上都魔改了Android系統,但均未開源,其在測試過程中總會與Android官方源碼有所差異,導致出現各種各樣的問題,因此筆者更加推薦Google官方推出的手機。筆者在這本書中選擇了Nexus 5X,讀者如選擇其他型號的手機,僅供參考。

在拿到測試機后要完成刷機,首先需要打開手機的“開發者選項”,具體步驟如下:

進入“設置”頁面,點擊“系統”,然后點擊“關于手機”,進入“關于手機”界面,如圖1-8所示。

圖1-8 進入“關于手機”界面

連續多次點擊“版本號”所在View,直到屏幕提示已進入“開發者模式”,如圖1-9所示。

在出現頁面提示“已處于開發者模式”后返回上一級目錄,也就是進入“系統”界面,此時會出現“開發者選項”,點擊“開發者選項”,如圖1-10所示。

圖1-9 打開“開發者模式”

圖1-10 進入“開發者選項”界面

在進入“開發者選項”界面后,首先打開“USB調試”。在這個選項打開后,使用USB線連接計算機,手機端就會出現“允許USB調試嗎?”對話框,如圖1-11所示。

圖1-11 請求允許USB調試

在同意USB調試之前和之后使用adb devices命令的結果如下:

再次回到Android測試機上,此時還有一個“OEM解鎖”選項需要允許,如圖1-12所示。這個選項決定了后續能否完成刷機,也就是刷機中常聽到的Bootloader鎖。

此時,在計算機的終端上執行命令adb reboot bootloader或者將手機關機后同時按住手機電源鍵與音量減鍵,進入Bootloader界面。OEM未解鎖之前的Bootloader界面,如圖1-13所示。

圖1-12 請求允許“OEM解鎖”

圖1-13 OEM未解鎖之前的Bootloader界面

保持手機使用USB線連接上計算機,再次在計算機終端中運行fastboot oem unlock命令,然后測試機就會彈出確認界面,此時按音量減鍵直至選中YES選項后按電源鍵,至此,OEM鎖就成功解鎖了。如圖1-14所示為解鎖后的Bootloader界面。

圖1-14 OEM已解鎖的Bootloader界面

在OEM解鎖后,一個完整的可供刷機的手機就準備完成了,此時如果要刷入新的特定系統,就要準備刷機包。這里的刷機包其實也可以叫作官方鏡像包,Google官方提供了一個官方鏡像的站點(網址:https://developers.google.com/android/images),筆者這里下載Nexus 5X的對應刷機包,由于Android 8.1.0_r1這個版本的系統支持的設備比較多,因此在這里筆者選擇這個版本的系統進行演示。Android 8.1.0_r1對應代號為OPM1.171019.011,版本與代號對應關系的網址為https://source.android.com/setup/start/build-numbers#source-code-tags-and-builds,在找到代號后,再次回到官方鏡像站下載對應版本的鏡像。

在下載完畢后,解壓刷機包并進入刷機包目錄,同時手機進入Bootloader界面并使用USB線連接上主機,然后直接運行flash.sh文件。對應步驟如下:

之后,手機系統便會進入初始化界面,在完成語言、WiFi等相關的設置后,一臺“新”的測試機就誕生了。當然,為了方便后續測試,此時還需要再次打開“開發者選項”以獲取USB調試許可。

如圖1-15所示,在聯網之后會發現測試機系統時間與計算機時間不對應,且頁面提示“此WLAN網絡無法訪問互聯網”。此時可以通過以下命令解決這個問題,在命令運行結束后,待測試機重新開機后便會發現問題消失。

圖1-15 WLAN網絡無法訪問互聯網及時間不同步問題

主站蜘蛛池模板: 平远县| 深泽县| 和平县| 梁山县| 盈江县| 运城市| 桦南县| 徐汇区| 黄山市| 宁德市| 黄石市| 洛扎县| 恩平市| 泸定县| 毕节市| 株洲县| 淄博市| 绥滨县| 宜兰市| 黔西县| 镇平县| 海盐县| 乌兰察布市| 枣庄市| 本溪市| 铜陵市| 岗巴县| 合肥市| 天水市| 四川省| 镇安县| 安福县| 青龙| 革吉县| 稷山县| 梁山县| 荔浦县| 左权县| 嘉鱼县| 司法| 思茅市|