2011年7月29日 星期五

HTC Legend 2.2 Froyo ROM & HBOOT 1.01 / S-ON 刷機 root

  用了這麼久的 HTC Legend 總覺得有一些不爽,那就是 HTC 設計的主記憶體容量實在太小了,加上台版 Legend 還有可惡的客製化軟體更是佔用不少空間。即使是後來終於等到了原廠升級 2.2 Froyo ROM 之後能將部分軟體移到 SD 卡中了卻也還總是不夠用,每次看到 Low memory 就火大,只好動用最後大絕招「刷 ROM」了。

  就這樣尋尋覓覓跌跌撞撞的開始刷機之後才發現原來 Android 的世界其實可以是更豐富且更方便的。像是 a2sd+、 等更好的移動軟體或快取資料到 SD 卡,更別提許多需要 root 才能使用的好用軟體了。只是剛開始得辛苦點慢慢摸索。寫到這篇還只能免強算是個開頭,做個紀錄順便給需要的人少走點彎路。25 安裝CM7

  值得一提的是在網路上尋找解決方案時才發現 Legend 居然被封印了,目前我也只找到以 r4-legend-root 中的 testimage.zip  作為基底 ROM 先刷一遍再用非官方 Rocovery 刷非官方版 ROM 成功刷機。(官方 Rocovery 刷 update.zip 時檢查會檔案簽章,非官方簽章的就沒辦法刷,所以要先做完破解後,就可以刷其他非官方簽章的 update.zip 了。)

刷機有風險,刷前請三思
本文提供的方法並不能使 S-ON 改為 S-OFF

  刷機之前建議先看「金卡(GoldCard )製作圖文教學」先準備好金卡備用,再看第二篇「改造 Android 手機需要了解的二、三事」可以更清楚刷機需要的資訊。文章如有疏漏請前輩達人們多多指教。

示範手機:
HTC Legend、HBOOT 1.01.0000、S-ON

工具需求:
adb(Android Debug Bridge):Android 開發工具,用 USB 連線下指令給手機。
  下載 adb.zip 並解壓縮到 C:\ 底下。(檔案是從 Android SDK r12 中取出無添加,請安心服用)當然最好是直接安裝 Android SDKSDK安裝教學)。

Legend rooting tools:神人製作的 Legend root 工具包。(原出處直接下載
  解壓縮 r4-legend-root.zip 並將檔案夾放到 c:\ 底下,在檔案夾中找出 testimage.zip 複製到 sdcard 上並改名為 LEGEIMG.zip。

hack4legend-v5.zip:破解 Legend 的工具包,出處不可考。(參考帖直接下載
  打開 hack4legend-v5.zip 將 misc1-2.img 和 flash_image 解壓縮到 adb 所在的檔案夾。

VISIONary+:能讓手機暫時獲得 root 系統管理員權限的軟體。(原出處直接下載

GoldCard 金卡:Android 金卡(GoldCard )製作圖文教學

Custom ROM:定製的 ROM,非官方、第三方修改過的都叫 Custom ROM。
  文章最後面會介紹一些還不錯的 ROM,挑一個自己喜歡的下載後將 ***.zip 檔案先複製到 SD 卡備用。

刷機步驟:
進入手機「menu → 設定→ 應用程式」開啟「未知的來源」。
01 未知來源

進入「menu → 設定→ 應用程式→ 開發」開啟「USB 除錯中」。
02 USB除錯

將手機用原廠 USB 線連接到電腦。
開啟 HTC Sync 安裝 visionaryplus.r14.apk ,安裝完畢後將連線改為「僅充電」模式。
03 安裝VISIONary

執行 VISIONary+ 點選 Temproot Now,等待畫面過一會畫面會變黑再跳回選項畫面。
在所有程式裡出現「授權程式」系統將暫時獲得 root 的權限。
04 VISIONary  05 Temproot now06 Temproot run 07 授權程式

在 Windows 開始功能表裏開啟「執行」輸入「cmd」開啟「命令提示字元」。
08 執行

將目錄指向 adb 所在位置,下圖中路徑是安裝 Android SDK 後的正常位置;如果是直接下載 adb 的話就是指向你放的位置,例如放在 c:\ 底下則輸入 cd c:\adb 。指向目錄後輸入下面的指令執行:
adb shell
09 adb shell su
輸入指令後看到上圖綠框那排字就表示手機連線正常,再輸入下面的指令執行:
su
執行 su 指令後手機會出現下圖畫面,按下允許取得授權。
10 允許授權

輸入兩次「exit」先退出系統管理員模式再退到命令提示字元的 c:\> 狀態。
11 輸入 exit

將 flash_image 和 misc1-2.img 複製到手機內。輸入下面的指令執行:
adb push flash_image /data/local/
adb push misc1-2.img /data/local/
12 push
(為方便大家辨識和操作,後面的 adb 目錄都會是用 c:\adb> 示範)

接下來再輸入下面的指令執行:
adb shell
su
更改 flash_image 的權限:
chmod 755 /data/local/flash_image
刷入 misc1-2.img 替代原來的 misc partition:
/data/local/flash_image misc /data/local/misc1-2.img
13 更改、刷入
完成後輸入兩次「exit」先退出系統管理員模式再退到命令提示字元的 c:\> 狀態。輸入指令將手機重新啟動到 FASTBOOT。輸入下面的指令執行:
adb reboot bootloader

Legend 自動重啟進入 FASTBOOT 畫面,按下電源鍵進入 BOOTLOADER 畫面,手機會找到 LEGEIMG.zip 自動複製、檢查,最後會提示是否開始載入,按「音量向上」選擇 Yes 開始刷 ROM 降級。
14 讀 Legend 15 降級 16 開刷

安裝完後會有訊息詢問是否重新啟動,按「音量向下」選擇 No 回到 BOOTLOADER  畫面選擇 RECOVERY 進入紅色三角形嘆號手機的畫面。
17 重新啟動 18 Recovery01

回到電腦上將命令提示字元的目錄指向 c:\r4-legend-root,輸入下面的指令執行:
step2-windows.bat
19 step2

出現  Pushing update file to device ..... 時正在複製檔案,會停一陣子請耐心等待。
20 稍待片刻

出現 now wipe and apply rootedupdate.zip from the recovery image menu 表示完成了。
21 step2完成

上一步 step2-windows.bat 完成後,手機會出現黃色的 Android system recovery 畫面,關閉命令提示字元視窗。使用光學軌跡球向下選擇 Wipe 按下光學軌跡球確定。
22 完成後

進入 Wipe 目錄後再用光學軌跡球操作將前三項都執行,執行時都是按下光學軌跡球確定。
23 Wipe

Wiep 三項都執行完成後按「音量向下」回到上層Android system recovery 目錄,用光學軌跡球操作選擇 Flash zip from sdcard 後會出現 SD 卡內所有的 .zip 檔案如下圖,這次我刷的是 CyanogenMod 的“夜夜版”就選擇 cm_legend_full-141.zip 按下光學軌跡球確定。
24 選zip 25 安裝CM7

Installing update... 需要點時間請耐心等候,當看到 Install from sdcard complate. 這排字時選擇 Reboot system now 按下光學軌跡球重新啟動手機。恭喜!你已經完成刷機大業了!
26 安裝完成

ROM 推薦:
Mobile01 網友 stive 製作的 Legend 2.2 台灣 OTA 個人修改版
下載:http://www.megaupload.com/?d=RPF2NJUP
1. 加入ROOT
2. 加入Apps2SD
3. 加入BusyBox
其他均未做過變更,一切以官方為主
出處:http://www.mobile01.com/topicdetail.php?f=566&t=1919981&last=24651427

CyanogenMod 7
下載及說明:CyanogenMod 7 簡介
出處:http://www.cyanogenmod.com/

目前暫時介紹這兩個 ROM ,其他的有空再說吧.......

7 則留言:

匿名 提到...

請問在執行 "step2-windows.bat" 時 , 都會一直出現device offline是何原因???

James Tsai 提到...

請問到這一步"Legend 自動重啟進入 FASTBOOT 畫面,按下電源鍵進入 BOOTLOADER 畫面,手機會找到 LEGEIMG.zip 自動複製、檢查,最後會提示是否開始載入"我的並沒有跑出提示安裝的訊息,請問如何解決?

Niro 提到...

BOOTLOADER固定會搜尋LEGEIMG.zip檔案
所以大概只有檔名錯誤才會沒有提示

林志 提到...

請問Legend rooting tools:神人製作的 Legend root 工具包似乎無法下載了耶=口=

lin hao hao 提到...

mtd: MEMGETBADBLOCK returned 1 at 0x00000000 (errno=0)
mtd: read all-zero block at 0x00020000; skipping
mtd: not writing bad block at 0x00000000
error writing misc: No space left on device
我出現這MSG要怎麼解決

匿名 提到...

這篇很大的問題,沒說SD卡內到底要放哪些檔案,我有放了LEGEIMG.zip跟ROM,卻在HBOOT收到"no image or wrong image"卡關!!!

蕭名軒 提到...

大大!!!載點都失效了...可以重新放上嗎?謝謝!!!