還原 Android 系統內建 App

  • 11862
  • 0
  • 2012-08-20

還原 Android 系統內建 App

在上一篇「刪除 Android 系統內建 App」中,有提到刪除系統鍵的 App 就無法刪除。

其實,並不是沒有辦法刪除,而是還原的過程有點小麻煩,本文就介紹如何從 RUU 提取 app 並將它還原。

 

這篇文章仍以 HTC Incredible S 為例,目前該手機的版本是 4.0.4。

在前一個 2.x 版本時,系統更新是透過「設定」-> 「關於手機」->「軟體更新」進行更新。

如果有 HTC 官方的更新,就會即刻下載更新軟體並且進行更新。

而所謂的 RUU (Rom Upgrade Utility) 就是給在 Windows 環境的更新程式,透過 USB 讓電腦與手機連線,進行更新。

 

而目前 HTC  Incredible S 最新版本的 RUU 是:

RUU_VIVO_ICS_35_S_TWM_TW_4.10.921.1_Radio_20.74.30.0833U_3831.18.00.11_M_release_266252_signed.exe

有需要的朋友可以根據檔案名稱 Google 一下,就可以在免空中找到…

2012-08-13_230808

 

下載 RUU 後,我們就可以執行該檔案,等待 RUU 程式解壓縮檔案至檔案系統,如果跳出 RUU 刷機程式視窗畫面後就可以關閉。

此時,我們做的就是找到 RUU 解壓縮暫存的目錄,找到 rom.zip 檔案:

在 Windows 7 環境下,暫存目錄在 C:\Users\[username]\AppData\Local\Temp\{6C0B00C-D016-40A9-9168-A0260BA692}\{50F2F878-636A-496F-A7CB-544C067EC4B}

紅色的部分,請根據登入 windows 的帳號名稱…

藍色的部分,名稱每次都不太一樣,可以根據檔案的最後更新時間來找找看…

或是在檔案總管中,前往 %temp% 就比容易尋找…

找到 rom.zip 後,請把他複製出來…

2012-08-13_231425

接下來,使用解壓縮軟體打開 rom.zip,你會看到下列一系列檔案,跟系統檔案相關的就是儲存在 system.img 中:

然後,請將 system.img  複製出來…

2012-08-13_231556

 

system.img 映象檔是 ext2 檔案格式,不同於 windows 認識的 FAT、FAT32、NTFS 之類的檔案系統格式。

所以,即使使用虛擬光碟將 system.img 檔案載入,依舊沒有辦法可以打開 映像檔抽取系統檔。

我們可以透過 Explore2fs  進行操作,將 system.img 載入:

2012-08-13_231741

 

使用  Explore2fs  就可以載入 ext2 及 ext3 檔案系統:

File –> Open Image File –> 選擇 system.img:

2012-08-13_231804

2012-08-13_231828

 

載入後,我們可以進入 app 目錄,裡面就是所有 /system/app 的檔案 ( 包含 xxx_TWM_xxx 台灣大哥大內建軟體 )

我們可以根據檔案名稱,將你誤刪或需要的 apk 及 odex 檔案提取出來。 (如果對 apk 及 odex 有興趣的,請參考 odex 說明)

2012-08-13_231916

 

提取出來的 apk 及 odex 檔案,我們可以先複製到 sd 卡,然後開啟 android 上的有 root 權限的檔案系統管理 app ,ex:Root Explorer

snap20120813_225720

 

首先,我們先觀察一下這些 apk 的檔案權限,長按任一檔案跳出功能選單,選擇「Permissions」。

目前在 sd 下的軟體權限為 075:

snap20120813_225725snap20120813_225734

 

而在 android 中,/system/app 下的所有檔案都必須是 644:

snap20120813_225743

 

但是,在 sd  上是沒有辦法修改檔案的權限的,你會得到以下錯誤訊息:

snap20120813_225750

 

所以,我們先透過 menu 鍵 –> 選 Multi-select –> 挑選我們想要還原的檔案:

snap20120813_225808snap20120813_225815

按下「Copy」複製,再前往 /system/app 下,進行「Paste」 貼上動作:

snap20120813_225822snap20120813_225841

 

不過,別忘記要按右上 「Mount R/W」 按鈕,將權限改為 Read and Write ,否則會得到警告訊息:

snap20120813_225849snap20120813_225856

 

再次使用「Paste」貼上:

snap20120813_225903

 

接下來最後的動作,就是調整檔案權限從075 –> 644,這樣就算是完成:

snap20120813_225918snap20120813_225926

 

當你把所有的系統內建的 app 還原後,重新開機系統應該就會重新安裝那些 /system/app 了。

如果沒有的話,在此建議各位還是先備份檔案再重置手機,步驟如下:

(1) 「設定」->「儲存空間」->「恢復原廠設定

snap20120813_230039snap20120813_230049

 

(2) 點「重設手機」:

snap20120813_230056

 

(3) 依照畫面指示,畫出解鎖圖案,然後點「清除全部」,系統就會重新啟動重新安裝 android 系統囉!

snap20120813_230103snap20120813_230110