[ Xperia Z ] Flashtool and Xperia Z

Title
這篇來整理一下關於使用 Flashtool 替 Xperia Z 刷韌體,使用 XDA 開發者 DooMLoRD 開發的工具取得 Xperia Z 的 root 權限,以及使用 [NUT] 的 XZDualRecovery 工具替 Xperia Z 裝上雙 recovery(CWM & TWAP)。其中關於 Flashtool 的部分的操作,凡是 Xperia 系列的手機都可以參考。

2014-02-20 更新:此篇僅適用於 Xperia Z 安裝 Android 4.2 的 ROM。由於現在 Xperia Z 已經更新到 4.3 了,因此此篇後半段關於取得 root 與安裝 recovery 的部分已捨棄。如果你需要替安裝了 Android 4.3 Jelly Bean 的 Xperia Z 取得 root 權限,請參考 [ Xperia Z ] Android 4.3 Jelly Bean 取得 root 權限的方法



使用 Flashtool 需要進入 Flashmode 或 Fastboot mode。Xperia 系列裝置都是採取「關機後,按住特定按鈕,接上 USB 線」的方式進入 Flashmode 或 Fastboot mode。至於進入哪個模式需要按哪個特定按鈕請參考: [ Xperia ] Fastboot 模式按鈕與 Flashmode 模式按鈕

本篇記載內容都是在 Windows 平台上完成作業。


Flashtool

製作人:Androxyde
官方網址:http://www.flashtool.net/

Flashtool 是 Androxyde 製作,用來替 Xperia 裝置刷韌體的工具。現在已經是 Xperia 裝置玩韌體的必備工具了。Flashtool 可以刷韌體,或是將 Sony Update Service / PC Companion 下載的官方韌體集合成 FTF 檔供 Flashtool 刷機用 。同時 Flashtool 也可以用來解鎖 bootloader。
 
除非你要安裝第三方(3rd-party)韌體(ROM),否則不建議解鎖 bootloader。解鎖 bootloader 會刪除 TA 分割區,導致 Trace ID 不能用。而且如果你繼續使用官方韌體卻又不鎖上 bootloader,很有可能會在安裝更新後導致陷入無盡重開機循環中(裝置開機後會出現開機動畫,動畫結束後畫面一黑又回到一開始的開機畫面,無窮盡的循環在開機動畫中)。因此本篇不記載如何解鎖 bootloader。

安裝

  1. 從官方網站取得 Flashtool 安裝檔。
  2. 直接安裝。過程中沒有什麼需要注意的。
  3. 安裝完成後,切換到 Flashtool 安裝路徑下的 drivers 目錄中,執行 Flashtool-drive.exe
  4. 在進行到與下面這張圖片相同的視窗時,務必將 Flashmode DriversFastboot Drivers 打勾。然後將即將要進行施工的 Xperia 裝置打勾。如下圖,至少會有三個元件被打勾。然後再繼續安裝。
    00001
  5. 過程中,若 Windows 跳出警告訊息,一律選擇安裝驅動程式。
  6. 接下來,將 Xperia 裝置關機後,先按住 Fastboot 模式按鈕,接上 USB 線,然後等待 Windows 出現找到新硬體以及安裝驅動程式的訊息,並且確認驅動程式安裝成功。
  7. 上一步驟確認驅動程式安裝成功後,拔掉 USB 線。 如果自動安裝驅動程式失敗,請往下翻參考「手動安裝驅動程式」。
  8. 接下來,確認 Xperia 裝置依然處於關機狀態,接著按住 Flashboot 模式按鈕,接上 USB 線。一樣等待 Windows 出現找到新硬體以及安裝驅動程式的訊息,並且確認驅動程式安裝成功。
  9. 上一步驟確認驅動程式安裝成功後,拔掉 USB 線。 如果自動安裝驅動程式失敗,請往下翻參考「手動安裝驅動程式」。

USB 偵錯

接下來要打開 USB 偵錯並且安裝驅動程式。

  1. 如果 Xperia 裝置使用的 Android 版本是 4.1(含)或更新的,開發人員選項模式預設是隱藏的。此時請進入《設定》,捲到最下面進入《關於手機》,捲到最下面連續觸擊《軟體版本》。連續觸擊數次後螢幕會出現提示訊息再觸擊幾次就會開啟開發人員選項,繼續觸擊到螢幕出現提示訊息說「你現在是開發人員了!」。
  2. 按倒回鍵,回到上一頁。此時可以看到在《關於手機》上面多出了一個《開發人員選項》。
  3. 將 USB 線與 Xperia 裝置斷開連接。
  4. 進入《開發人員選項》。
  5. 將《USB 偵錯》打勾。
  6. 此時將 USB 線插入 Xperia 裝置。Windows 應該會出現找到新硬體以及安裝驅動程式的訊息,請確認驅動程式安裝成功。
  7. 如果自動安裝驅動程式失敗,請往下翻參考「手動安裝驅動程式」。
  8. 到此準備工作告一段落。

手動安裝驅動程式

上述步驟中需要安裝驅動程式的部分,很有可能 Windows 自動安裝程序無法正確安裝驅動程式,此時需要手動安裝。

手動安裝驅動程式第一個動作是打開【裝置管理員】,接著尋找未知裝置。由於 Flashmode,Fastboot 與 USB 偵錯三種模式的裝置名稱都不同,因此以下以 Xperia Z 為示範機種分別講解。

  • Flashmode:未知裝置的名稱是〈S1 Service
  • Fastboot mode:未知裝置的名稱是〈S1Boot Fastboot
  • USB 偵錯:未知裝置的名稱是〈C6602
  1. 找到未知裝置後,滑鼠游標移過去,按右鍵,在跳出式選單選《更新驅動程式軟體》。
  2. 接著選擇《瀏覽電腦上的驅動程式軟體》。
  3. 接著選擇《讓我從電腦上的裝置驅動程式清單中挑選》。
  4. 如果接下來出現的畫面是【請從下列清單選取您裝置的類型】,那就往下找到〈Sony sa0107〉,選擇這個硬體然後按下一步。
  5. 如果 Windows 有找到相容的硬體(也就是不必經過上一步)就會列出可用的驅動程式。如果有兩個以上,請選擇有數位簽章的那個。
  6. 選擇好驅動程式,按下下一步就會安裝驅動程式。
  • Flashmode:安裝好驅動程式後,會在【通用序列匯流排控制器】底下多出一個 SEMC Flash Device 裝置。
  • Fastboot mode:安裝好驅動程式後,多出一個 Android Device 上層裝置,下面有一個 Sony ADB Interface 裝置。
  • USB 偵錯:安裝好驅動程式後,會多出一個 Sony sa0107 上層裝置,下面有一個 Sony sa0107 ADB Interface Driver 裝置。

用 Flashtool 將韌體刷入 Xperia 裝置

上面這些工作都完成後,就可以使用 Flashtool 將韌體刷入 Xperia 裝置。

Flashtool 支援的韌體檔案格式為 FTF(Flashtool Format)。這是 Flashtool 自己的格式。可以從網路取得他人製作好的 FTF 檔,或者是自己製作的 FTF 檔。

使用 Flashtool 刷韌體的程序如下:

  1. 將 FTF 檔放置到 Flashtool 安裝目錄下的 firmwares 目錄中。
  2. 如果作業用的電腦有安裝 Bluestacks 或是各種 Android 模擬器,請先將 Bluestacks 或 Android 模擬器退出或關閉,停止其運作。
  3. 如果 Xperia 裝置與作業用電腦透過 USB 線連接中,請斷開兩者的連接。
  4. 將 Xperia 裝置關機。
  5. 啟動 Flashtool。
  6. 點擊左上角的00002
  7. 選擇 Flashmode。
    00003
  8. 左邊的 Firmware 是目前現有的韌體清單。從這裡選擇你要刷入裝置的韌體。
    Wipe 是在刷機過程中會清除資料的分割區。如果只是要單純升級或降級韌體,但是不想動到使用者資料(包含已經安裝的 app 以及設定等等),把 DATA 的勾取消。DATA 若是被選取著,其意義相當於「系統重置回到出廠狀態」,因此請務必小心。
    Exclude 是指如果有不想刷入的分割區,將其打勾,就不會刷入新資料。一般來説這邊不需要變動。
    最後按下 [Flash]。
    00004
  9. 稍待 Flashtool 對 FTF 檔案進行必要的前置作業後,會出現提示畫面。
    00005
  10. 此時按住 Xperia 裝置的 Flashmode 按鈕,然後插入 USB 線。等到 Flashtool 的提示畫面消失之後就可以鬆開按鈕了。
  11. Flashtool 的畫面會提示目前的動作以及進度。
  12. 完成時,Flashtool 會告知已經完成。此時斷開 Xperia 裝置與 USB 線。
  13. 啟動 Xperia 裝置。

取得 Xperia Z 的 root 權限

在 Xperia Z 韌體版本 10.3.1.A.0.244(不含)之前,取得 root 權限是一件很輕鬆的事情。只要運行 DooMLoRD 製作的 toolkit 就行了。但是原本用來取得 root 權限的漏洞,卻在 10.3.1.A.0.244 被修補了。還是可以取得!只是步驟變得比較麻煩。需要 Flashtool 的協助。
這個方法是 DooMLoRD 想出來的,原文發表在 XDA 上,此為連結:http://goo.gl/Vh0Mgy
要從 10.3.1.A.0.244 與 10.3.1.A.2.67 版韌體取得 root 的權限,需要

操作步驟:

  1. 過程中,有部分為 toolkit 自動操作。此時若螢幕關閉會導致操作中斷。為了避免此種情況,需將休眠時間拉長。
  2. 依序進入:《設定》→《顯示》→《休眠》,選擇 10 分鐘(或更長的時間)。
  3. 開啟 USB 偵錯。
  4. 如果作業用的電腦有安裝 Bluestacks 或各種 Android 模擬器,請先確定將其退出,停止運作。
  5. 將下載下來的 kernel 的 FTF 檔放到 Flashtool 安裝目錄下的 firmwares 目錄中。
  6. 啟動 Flashtool。
  7. 刷入 10.3.A.0.423 的 kernel。
  8. 重要:斷開 USB 線與 Xperia Z。
  9. 非常重要:將 Flashtool 關閉。
  10. 將 Xperia Z 開機。
  11. 將 DooMLoRD Easy Rooting Toolkit v18 解壓縮,放置到 C: 下面。
  12. 重要:確定 USB 偵錯有開啟,解鎖後進入桌面。將 USB 線與 Xperia Z 連接。
  13. 重要:《設定》→《安全性》,將《不明的來源》打勾。
  14. 執行 DooMLoRD Easy Rooting Toolkit v18 目錄中的 runme_win.bat。
  15. 按照畫面提示一步一步進行操作。
  16. DooMLoRD Easy Rooting Toolkit v18 的 runme_win.bat 最後會將 Xperia Z 重開機。此時應該已經取得 root 權限。
  17. 檢查後,若確定取得 root 權限,接下來還要刷入正確的 kernel。
  18. 斷開 Xperia Z 與 USB 線。
  19. 啟動 Flashtool。
  20. 刷入 Xperia Z 裏面安裝的韌體版本的 kernel。安裝的是 10.3.1.A.0.244,就刷 10.3.1.A.0.244 的 kernel。如果已經更新到 10.3.1.A.2.67,就刷 10.3.1.A.2.67 的 kernel。
  21. 完成。

安裝 recovery

XDA 的 [NUT] 製作了 XZDualRecovery 套件,替 Xperia Z 同時刷入 CWM 與 TWAP 兩套 recovery。該套件發表於 XDA,此為連結: http://goo.gl/6IueW5


本文章發佈時的 XZDualRecovery 穩定版本為 2.6.3,測試版本為 2.7.9。本篇記載內容以 2.6.3 為主。

操作步驟:

  1. 將下載 XZDualRecovery 套件解開。
  2. 啟動 Xperia Z。
  3. 確定 USB 偵錯有開啟。
  4. 進入 XZDualRecovery 套件目錄。
  5. 如果要刷入 recovery 的 Xperia Z 用的 root 權限管理工具是 SuperUser 的話,請執行 superuser.bat
    如果要刷入 recovery 的 Xperia Z 用的 root 權限管理工具是 SuperSu 的話,請執行 supersu.bat
  6. 接下來按照螢幕指示進行。
  7. 安裝程序將會重啟 Xperia Z,並且會自動進入 CWM。
  8. 進入 CWM 之後請直接選擇 Reboot System 重啟系統。
  9. 安裝完畢。
  10. 之後每次開機時,當 Xperia Z 震動一下時(此時 LED 燈發綠光)
    按 音量(向上) 則進入 CWM
    按 音量(向下) 則進入 TWAP
  11. 完成。