簡介
本文詳細介紹 HTC Magic 手機,刷 Ginger Yoshi 版本自訂 ROM 的步驟,特別說明 swap 的設定注意事項。正確設定 swap 才能避免浪費空間,並大幅提升手機效能。
下載最新的 ROM
或者到 xda developers 尋找最新的 ROM。
進入 recovery mode
- 關掉手機電源。
- 按住
Home
鍵,按下Power
鍵,放開Power
鍵。
規劃 SD 卡: sd-ext partition
- 選擇
Partition sdcard
- 選擇
- Partition SD
Swap-size = 0 MB
Ext2-size = 512 MB
- 選擇
- SD:ext2 to ext3
- 選擇
- SD:ext3 to ext4
- 按
Back
鍵,回到主選單。
- 選擇
Wipe sd-ext partition
- 選擇
Wipe
- 選擇
- Wipe data/factory reset
- 選擇
- Wipe Davilk-cache
- 選擇
- Wipe battery stats
(刪除/data/system/batterystats.bin
) - 選擇
- Wipe rotate settings
- 按
Back
鍵,回到主選單。
- 選擇
把 ROM 複製到 SD 卡
- 確認手機跟電腦已使用 USB 線連接。
- 選擇
USB-MS toggle
(切換到USB磁碟機模式,電腦應該會自動出現代表 SD 卡的磁碟機)。 - 把下面兩個檔案複製到 SD 卡根目錄:
ginger yoshi 1.5.zip
32a kernel.zip
- 在電腦(檔案總管或工具列)選擇
退出磁碟裝置
。 - 按下
Home
鍵,回到 recovery 模式。
刷新的 ROM
- 選擇
Flash zip from sdcard
- 選擇
ginger yoshi 1.5.zip
- 按下
Home
鍵確認,開始刷 ROM。
注意以下兩個選項,其他選項請依需求自行斟酌:Install to EXT Partition:
yes
...Install a 60mb swap on EXT:
yes
... - 完成之後,自動回到主選單。
- 選擇
- 選擇
Flash zip from sdcard
- 選擇
32a kernel.zip
- 按下
Home
鍵確認,開始刷 ROM。 - 完成之後,自動回到主選單。
- 選擇
關機/啟動!
- 選擇 Power off,按下 Home 鍵確認。
- 按下 Power 鍵,啟動新的 ROM。
設定 swap
這部分請參考「設定Android手機的SWAP」這篇文章。基本上,可以使用 swapper 2 這類程式,在 FAT 32 上面建立 swap file,或是掛載 swap partition。另外,也可以透過 userinit.sh 掛載 swap partition。我還沒試過,下次重裝的時候,再來試試看。
詳細說明
自從 1.3 版開始使用 Ginger Yoshi,一路更新到最新的 1.5 版,但一直沒花心思弄清楚正確的安裝步驟,歷經多次安裝及版本升級,每次效能似乎都不一樣,時好時壞。直覺告訴我這應該是 swap 設定的問題。
有兩個地方牽涉到 swap:
- 為了使用 APP2SD 功能,在 Ginger Yoshi 安裝的過程中,首先需要規劃 sd 卡,設定 ext partition,而在這個過程中,同時也包含了 swap partition 的容量設定。
- 刷 ROM 的時候,會問你要不要安裝一個 60 mb 的
swapfile.swp
。
就是這兩個關鍵,我過去一直沒搞清楚。
為了徹底瞭解 swap 應該如何設定,首先要確認 swap partition, swap file 是否有作用。
要檢查 swap,可以使用 terminal 程式執行 free
指令,檢查記憶體容量:執行 terminal
進入 shell,輸入 free
指令,若有顯示 swap 資訊,且顯示的容量不是 0 0 0 0
的話,就表示 swap 能夠運作。
確認的詳細過程就不說了,基本上就是用最笨的方法測試了 4 種排列組合,最後確認:
類型 | 說明 |
---|---|
swap partition | 無作用 |
swapfile.swp | 有作用 |
另一個過去一直讓我感到疑惑,覺得效能時好時壞的原因,其實是像我這種搞不清楚狀況的新手,自己手賤造成的:
在刷 Ginger Yoshi 的時候,有一個新手很容易做錯的地方,就是在刷完 ROM,建立 swapfile.swp
檔案後,絕對不可以再 wipe sd partition,因為這樣一來,swapfile.swp
就被清除掉了,沒有 swap 虛擬記憶體的加持,切換程式的時候,都要釋放記憶體,重新載入程式,效能當然就不好了。很多人常說沒有 wipe 乾淨,會導致啟動不正常,新手聽了猛點頭,然後拼命 wipe...哈!
結論
開機完成,果然效能大幅提升,在幾個平常切換時需要重新載入的程式之間來回切換,完全不需重新載入,幾乎都可以瞬間顯示。老手機經過適當地設定、調整,其實還是很好用的。
歡迎大家的回饋與心得分享。
參考資料
- Ginger yoshi 1.5 (android 2.3.5) for 32b and 32a old and new radio ^_^
- Ginger yoshi (Android 2.3.5) install guide for T-Mobile G1 (32B version)
- 替 Magic 換上客製化韌體 (Android 1.5 to 2.1)
- HTC Magic 與電腦正確連線
- 更換 Android 手機的開機畫面 (Boot Splash Image)
- [Android][分享][教學][轉載]開機動畫
- Android bootanimation 制作過程
- 設定Android手機的SWAP
- A688/A60 手機 Rom 備份及還原,使用 FastBoot 刷機
- Swap and Compcache