New HTC One刷ROM的技巧探討
刷機顧名思義就是替手機安裝新的系統,猶如自行安裝Windows系統一樣,PC安系統最常見的方式是由光碟機來安裝,當然也可以使用USB隨身碟或映像檔方式安裝,然而不同媒介的安裝上,BIOS卻是扮演的相當重要的角色。智慧型手機儼然已成為一台型小的電腦裝置,或許你可以想像手機的HBOOT就是PC上的BIOS,那進入HBOOT後就可以像PC一樣由不同的媒介安裝Android系統嗎?就讓我們來一起探討刷ROM的方式與技巧。
Recovery與Fastboot
Android智慧型手機的HBOOT俗稱工程模式,進入此工程模式可以看到Recovery、fastboot等常聽到的功能選項,說穿了Recover就是手機刷機的介面程式,但手機商怕使用者亂還原或刷機,提供的Recovery相當陽春,因此才會有第三方的Recovery出現,只要替換第三方的Recovery,就猶如Ghost般神奇的工具一樣,方便備份、還原你的系統,可說是刷機上不可或缺的好夥伴。
fastboot也是一個刷機介面,只不過是處於較低 階控制介面,與Recovery主要的差別是在於fastboot的控制端是在PC電腦上,而Recovery是一個在手機上可獨立運作的Ghost程式,不須透過PC來運作,HTC的手機都有S-ON機制,即使官解Unlock BootLoader後,Recovery仍然無法直接刷入boot.img,這時可以透過fastboot來補其之不足。
往往刷入第三方的Recovery是刷機相當重要的步驟,因為官方的Recovery相當的雞肋,簡直是個空殼子Recovery,有了第三方Recovery才能讓你的手機變成刷機高手,當然HTC手機必須先經過Unlock BootLoader後才能刷上Recovery,相關的動作請先參考優質的New HTC One ROM – A4TW Ares ROM文章中的刷入第三方的Recovery步驟。
一般刷機都是利用Recovery來處理,必要時再搭配上Fastboot來運作,所以衍生了刷機的方式也有所差異,再來,目前有些機子沒有SD卡的擴充功能,因此刷機時的資料來源往往也是造成刷機方式不同的原因之一。切記,不管哪一種方式,養成備份是相當重要的工作。
傳統SD卡刷機方式
有可擴充SD卡與刷過機的玩家都知道,只要將ROM放入SD卡上,進入Recovery後使用「install zip from sdcard」→「Choose zip from sdcard」來選擇SD卡上的ROM,New HTC One沒有microSD擴充槽,因此會將內建的ROM分割一部份模擬成SD卡空間,所以當你刷ROM時仍然可以使用此方式來刷,由於沒有Micro SD擴充槽,想要格式化內存後再刷機可能不適合此方式。
OTG刷機方式
目前較新的高階手機都有支援OTG功能,尤其像New HTC One沒有 microSD擴充槽更顯得重要,因為利用OTG連接隨身碟如同外部擴充SD卡功能,讓你捉襟見肘的內部儲存空間有喘息的機會,當然第三方的Recovery也都支援這個OTG功能,因此你也可以利用隨身碟方式來刷機,所以也不必在意SD卡內是否有資訊,更方便讓你直接進行SD卡的清除動作,這樣刷機後的系統能更乾淨而沒有殘留的垃圾,不過建議養成好習慣,刷機前一定要備份sdcard資料到PC上。
不過要使用此方式刷機需要注意一下哦!
- 準備一條OTG 線,很便宜不到50元。
- 一支2G以上的隨身碟(不要超過32G),必須是FAT32的格式,切忌請勿使用Windows內建的系統來格式化,因為OTG無法辨識的機率很高,建議使用專用的隨身碟格式化工具,如SD Formatter 軟體。
▼想要用OTG刷機前最好先測試一下你的Recovery是否能順利地抓到隨身碟,挨踢路人甲當時就是使用Windows 7系統內建格式化功能來Format 隨身碟,也複製了狂少的ROM到隨身碟上,無奈在recovery下就是無法mount到隨身碟,所以請務必先進入Recovery看看是否能抓到你的隨身碟是很重要哦!
▼重新使用SD Formatter 軟體格式化後,將下載的ROM放入隨身碟內,並將隨身碟插入OTG線且連接至手機上,確定可以抓到隨身碟上的資訊。重新開機進入Recovery畫面上,刷不同的ROM之前最好清除系統之外的分區資料(Full Wipe),以免這些分區資料影響日後刷的系統,或許你可以使用寫好的script檔案來Wipe,不過挨踢路人甲都是習慣使用Recovery內提供的wipe來處理,首先進入Recovery畫面來進行3F的動作。
- 「wipe data/factory reset」→「Yes – delete all user data」
- 「wipe cache partition」→「Yes – wipe cache」
- 「advanced」→「wipe Dalivk Cache」→「Yes – wipe Dalivk」
▼回到主畫面上再進入「mounts and storage」畫面上,想要有個乾淨的sdcard與內存,可以使用format /cache、format /data、format /sdcard、format /system來格式化清除資料(俗稱4F),若不想清除內存可以略過這個動作,再次提醒format /sdcard會將sdcard內的資料清除乾淨,切記要動作前記得要被備份sdcard資料哦!
▼做完3W4F的清除動作後,回到主畫面上選擇「install zip from sdcard」→「choose zip from external sdcard」。
▼來到了隨身碟內容的瀏覽畫面,選擇之前複製到隨身碟上的「A4TW_Ares_LR2.2c.zip」ROM檔,右圖是出現再次確認的畫面,請觸碰「Yes – install A4TW_Ares_LR2.2c.zip」開始進入aroma安裝介面。
▼A4TW Ares LR2.2c ROM一樣使用aroma的安裝介面,非常淺顯易懂,接下來應該不用再多說了。
▼左圖是進行3W沒有4F的畫面,右圖是有3W與4F的動作,可以看出確實將前版殘留的資訊清除乾淨。
sideload方式
Nexus 7老早就升上的Android 4.2.2,沒辦法,Google的乾兒子總是比較紅,最近也傳出一些手機商準備為手機升級4.2.2的動作,或許Android 4.2.2改變了對SD卡的對應位置,若刷機升級至Android 4.2.2時可能會造成殘留資訊,也就是原先Android 4.1.2前的的資料無法在新版Android 4.2.2上辨識出來,為了錙銖必較的內存空間,勢必想要對內存空間做一次乾淨的清除動作,倘若進行了3W+4F後,內存空間與sdcard乾淨的清除了,那如何在無系統上將ROM放至乾淨的sdcard上呢?因此才會針對sideload與adb push方式諸多琢磨。
sideload的優勢是不必再存入sdcard卡來刷機,只要將手機接USB並連結電腦 (當然前提必須先裝好手機驅動程式),直接透過電腦植入手機並進行刷機。切記進行了3W+4F前一定要養成習慣將SD卡的資料訊全部備份以防萬一。舊的adb無法支援sideload功能,所以請下載新版的adb工具。
【支援sideload的adb工具】: http://goo.gl/THooi
▼備份SD卡的資料至PC上,將下載下來的ROM更名成較簡易的名稱,並複製放入電腦C槽根目錄下 。連接手機至PC並進入recovery畫面,想要有乾淨不殘留前版的垃圾,可以進行3W與4F的動作。
- 「wipe data/factory reset」→「Yes – delete all user data」
- 「wipe cache partition」→「Yes – wipe cache」
- 「advanced」→「wipe Dalivk Cache」→「Yes – wipe Dalivk Cache」
- 「mounts and storage」→「format /cache」
- 「mounts and storage」→「format /data」
- 「mounts and storage」→「format /sdcard」 (此動作會清除sdcard上的全部資料)
- 「mounts and storage」→「format /system」
▼回到主畫面上選擇「install zip from sideload」選項,此時出現右圖等待你進行sideload動作。
▼按下〔視窗鍵〕+〔R〕來開啟執行視窗,請輸入「cmd」進入命令提示字元視窗,切換到下載解壓縮後的adb目錄下。你可以輸入「adb devices」來看看手機是否已連線, 若正常連線應該可以看到手機序號的出現。
▼挨踢路人甲進行sideload時失敗許多次,原來我的adb版本太舊不支援sideload,另一個原因是我有安裝BlueStacks的android模擬程式,造成adb出現「More than one device and emulator」問題,結果下載支援sideload的adb工具與移除BlueStacks即可正常運作,確定沒有問題後請輸入「adb sideload C:\l22.zip」(其中l22.zip是我更改簡化後的ROM檔名),當你看到100%表示成功,接著手機上就會自動安裝ROM了。
adb push方式
假如以使用沒有支援sideload的舊版adb,或是想要返樸歸真的步驟,也可以使用adb push指令將ROM檔案先放至到SD卡上,接著再利用Recovery使用傳統SD卡刷機方式,傳統方式刷機方式。
▼備份SD卡的資料至PC上,將下載下來的ROM更名成較易記的名稱,並複製放入電腦C槽根目錄下 ,連接手機至PC並進入recovery畫面,想要有乾淨不殘留前版的垃圾,可以進行3W與4F的動作,若沒經驗者或忘了備份則可略過4F的動作
- 「wipe data/factory reset」→「Yes – delete all user data」
- 「wipe cache partition」→「Yes – wipe cache」
- 「advanced」→「wipe Dalivk Cache」→「Yes – wipe Dalivk Cache」
- 「mounts and storage」→「format /cache」
- 「mounts and storage」→「format /data」
- 「mounts and storage」→「format /sdcard」 (此動作會清除sdcard上的全部資料)
- 「mounts and storage」→「format /system」
▼將手機接電腦並輸入「adb devices」來看看手機是否已連線, 若正常連線應該可以看到手機序號的出現。
▼直接利用adb push指令將PC上的ROM放入手機的SD卡上,其指令為「adb push c:\lr22c.zip /sdcard/lr22c.zip」,完成後你會看到所花費的時間,最後就是利用傳統SD卡刷機方式,使用「install zip from sdcard」→「Choose zip from sdcard」來選擇SD卡上的ROM即可。