2013年2月16日 星期六

Android 4.0 內建備份還原機制-免root


原理

其實在 Android 4.0 的時候就有一個內建這個備份功能,只是很多人不知道怎麼使用,想要使用這個備份與還原的機制就必須與電腦搭配,透過 Google 推出的電腦版的 ADB 這個小工具就可以直接來與 Android 4.0 來搭配組合將 Android 4.0 上面的軟體資料備份到電腦上,相對的既然可以透過這個方式來備份當然也可以還原。


注意事項

  1. 此方法不能備份聯絡人、簡訊、通話紀錄,如要備份請參考『教您如何備份 Android 手機上的軟體、遊戲、聯絡人、簡訊、通話記錄
  2. 此方法不能備份相關的系統設定(Widget、桌面設定、捷徑設置)
  3. 有些APP的資料不會備份到,原因可能是因為不同路徑或是APP本身有限制,也有可能該 APP 把資料放在 SD 記憶卡上,請手動把 SD 記憶卡的資料複製出來並到別台手機測試是否可正常還原。
  4. Sony 部分手機拿掉了這個備份機制。


事前準備

  1. 首先先確認您手機的 USB 偵錯模式已經開啟,如果不知道怎麼開啟可以參考這篇文章『教您如何開啟 Android 系統的 USB 偵錯模式』,如果您的系統是  Android 4.2 以上的話請參考這篇來開啟 USB 偵錯模式『教您如何開啟 Android 4.2 USB 偵錯模式
  2. 接著找一台 Windows XP 來運作會比較保險,畢竟需要 DOS 視窗來運作,怕有些朋友的 Windows 7 沒辦法運作 Dos 視窗。
  3. 不論您的手機是哪款,請先安裝好該手機的驅動程式確認您的電腦可以認到您的手機,至於驅動程式到哪找,請到官方網站下載即可,安裝好驅動程式之後到您電腦中的『裝置管理員』當中應該可以看到您的手機驅動程式已經安裝好(如下圖所示),如果有出現什麼驚嘆號或是問號就代表您的驅動程式沒安裝完成,請重新安裝驅動程式即可。




  1. 下載相關檔案,下載位置:Android-4.0-backup-tools.zip,檔案出處為:Mobile01 AKSN74 已取得原作同意與各位分享
  2. 下載完畢之後請解壓縮,可以看到以下的檔案,就代表您完成所有的事前準備囉!



備份方式

備份方式其實相當的簡單,因為 Mobile01 上的 AKSN74 網友已經寫好一個批次檔可以直接執行與使用,所以只要按照步驟一步一步的操作就可以備份您手機當中重要的資料。

備份相關注意事項

  • Android 版本問題:不過在這良心的建議大家如果要使用『備份整支手機』的話會有一定的機率無法還原,因為包含了系統 APK ,為什麼 Leo 會說會有一定的機率無法還原呢?因為您備份的時候有可能是 Android 4.0 ,接著某一天手機送修或是升級之後升級到 Android 4.1 的時候,由於系統檔案更新過造成無法還原,或是還原之後無法正常操作那就糗了,所以使用備份整支手機這個功能真的要注意備份與還原的時候系統版本的差異。
  • 異機還原該注意的事情:其實原理同上,千萬別在 A 廠牌使用『備份整支手機』之後將資料整個還原到 B 手機,因為使用備份整隻手機這個功能包含了系統檔案,不同廠牌與型號手機系統檔案皆不相同,還原回去的時候會造成系統錯亂甚至無法使用正常開機使用的情形發生,因此不建議在異機做整支手機還原的動作,這是 Leo 的慘痛經驗與大家分享。
  • 最佳的備份與還原方式:最棒的備份與還原方式就是備份單個 APP 名稱,其實說真的一支手機當中有多少資料要備份其實自己最清楚,裝了一堆軟體可能要備份的軟體沒幾個,所以單獨備份這幾個 APP 最單純,而且也因為是單獨備份 APP 的關係,因此可跨系統、廠牌、機型還原的機率提高不少,因此才會良心的建議大家善用這個備份單個 APP 的功能。不過要備份單一 APP 的話您就必須手動鍵入該軟體的檔案名稱非軟體名稱


1.電腦端操作步驟

  1. 下載 Android-4.0-backup-tools.zip 之後並解壓縮之後點選『備份與還原manager.bat』出現下列畫面。
  2. 請依照您的需求來選擇您要備份的資料。
  3. 如果是備份單個 APP 的話請務必輸入檔案名稱,如不知請參考請參考這篇『教您如何查詢 Android 軟體檔案名稱』文章。
  4. 輸入要備份在電腦當中的備份檔案名稱。
  5. 最後確認是否要備份 APK ,建議備份會比較保險。
  6. 最後就會在目錄當中出現附檔名為『ab』備份檔。



2.手機端備份方式與加密功能

其實 Google 在 Android 4.0  加入了這個備份機制之後,也考慮到資料的安全性的問題,因此在您想要將資料從 Android 4.0 系統當中備份出來的時候,就會彈出以下的視窗來請您確認是否要設定密碼來加密,如果您設定了密碼來將這個檔案加密的話,還原的時候也需要鍵入對應的密碼才能還原喔!因此在使用這個機制的時候要特別注意,千萬別忘了密碼,不然就算神仙下凡來也幫不了您。因此當您完成電腦端操作之後,手機端會出現下列的操作畫面,請依照步驟說明即可。
  1. 請確認是否要將資料加密,如我要請鍵入您的密碼,如果不需要加密的話請留空白。
  2. 輸入密碼之後請按下『備份我的資料』準備開始備份。
  3. 接著會出現您剛剛在電腦端鍵入的檔案名稱資訊,也確認您進入的檔案名稱無誤。
  4. 最後會看到下方出現『正在備份』代表正在備份這些資料當中,最後備份完成之後此視窗將會消失,備份下來的檔案會在電腦端該軟體目錄底下,附檔名為 『ab』的就是您剛剛備份下來的資料。



還原方式

▼至於還原的方式就非常的簡單了,只要在過程當中輸入之前備份下來附檔名為『ab』的檔案名稱就可以直接將之前備份下來的檔案給還原回去到您的手機當中,至於是單一軟體的還原還是整支手機的還原就端看您當初再備份的時候的方式為何囉!



補充說明

最後附上指令的相關說明提供給有興趣的朋友,以下說明由Mobile01 AKSN74 彙整而整已取得原作同意轉接並與各位分享
  • 語法:adb backup -apk -all -nosystem -f D:\test.ab
  • 範例:adb backup [-system|-nosystem] -all [-apk|-noapk] [-shared|-noshared] -f
  • 看起來很複雜對不對? 下面我會一一解釋這些指令是有什麼用途
[-system|-nosystem]
這個指令是告訴adb 在備份時是否要連同系統一起備份,若沒有打的話 預設是-system 表示會一起備份系統,注意!若連系統一起備份 在還原的時候會覆蓋系統檔案 對於已經升級後的手機是非常不好的,我不知道在沒有ROOT的情況下 adb是否有權限去還原系統檔案 但就算如此 還是不建議這樣做,因此 -nosystem是建議一定要打上的指令。
-all
這個指令是一定要打上去的 問你是否要備份全部的APP 若有加上-nosystem的指令,那麼他就只會備份你目前已經安裝上去的APP 而不會連系統APP一起備份。
[-apk|-noapk]
預設是-noapk 這個的意思是是否連安裝的APK一起備份,若為-noapk 則只會備份APK的資料檔(像是遊戲存檔 設定 之類的),但我會建議連APK一起備份 因為這樣才不會有版本衝突的問題
[-shared|-noshared]
預設是-noshared 這個會問你是否連手機儲存空間或是SD卡的檔案一起備份,我是不知道若有APP安裝在SD卡上的時候 沒打這指令是否會略過,但若大部分的APP都安裝在內務空間的話 這個就可以不用打了。
(註:HTC有保留一個名為com.android.sharedstoragebackup的APK 這個APK會將SD卡或是手機空間的資料都備份 因此除非使用-nosystem指令否則對於HTC手機來說 不管有無打-shared 手機空間的資料一定會備份)
-f
這個是指定備份完之後 要存在電腦的哪個地方,不過記得要打檔名 而副檔名則一定要打.ab


資料來源: http://www.mobileai.tw/2013/01/21/android-backup-restore-root/

沒有留言:

張貼留言

我的網誌清單