ICS以降の端末の大きなメリットとしては、adbコマンドに「adb backup」 「adb restore」が利用できるようになったということが挙げられます。ICS以前の端末ではまるっと端末のバックアップを取るためにはrootedでなければ不可能であり、大きなリスクを伴っていました。
adbコマンドを利用するためにはまず、Androidの開発ツールである "Android SDK" をインストールしておく必要があります。Android SDKのインストール方法は割愛しますが、以下のサイトを参考にしていただければと思います。
Android SDKのセットアップが完了し、端末を認識できるように設定したら(以前のエントリを参照)、ようやくadbコマンドが利用可能になります。
adb backupの使い方
コマンド実行時には端末の設定から「USBデバッグ」チェックを入れた上でPCとUSB接続をしてください(-apk|-noapk enable/disable backup of the .apks themselves in the archive; the default is noapk.)
(-shared|-noshared enable/disable backup of the device's shared storage / SD card contents; the default is noshared.)
(-all means to back up all installed applications)
(-system|-nosystem toggles whether -all automatically includes system applications; the default is to include system apps)
(<packages...>is the list of applications to be backed up. If the -all or -shared flags are passed, then the package list is optional. Applications explicitly given on the command line will be included even if -nosystem would ordinarily cause them to be omitted.)
ざっくりと説明すると、
"-f"がバックアップファイルについて指定するオプションで、デフォルトだとカレントディレクトリに「backup.ab」という拡張子でファイルが生成されます。
"-apk|-noapk"はバックアップにapk(いわゆるアプリ)を含めるか否かのオプションで、指定がなければ”-noapk”で含まれません。
"-shered|-noshered"は端末に割り当てられたSDカードにバックアップを保存するか否かのオプションで、指定がなければ"-noshered"でSDカードには保管されません。
"-all"はそのまんま全てのアプリケーションかどうかということです。
"-system|-nosystem"はシステムアプリケーションも含めるか否かということで、指定がなければ含まれます。
<packages...>は必ずバックアップを取るアプリケーションのパッケージ名を指定することで、nosystemで本来バックアップ対象でないものも、このように明示的に指定すればバックアップが取れます。
例えばapkを含めた全てのファイルをバックアップし、SDカード上でも保管する場合は以下の様になります。
このコマンドを利用すると、各種アプリケーションの設定も含めてバックアップしてくれるので、いざ元に戻したときに、一々設定をやり直しする手間がなくなるのがうれしい。コマンド入力後に端末側でバックアップ取得の為のパスワードを入力を求められるのでそれを入力します。(フルバックアップのパスワードはあらかじめ設定しておいてください。設定>開発者向けオプション>PCバックアップパスワードで設定が可能です。)
adb restoreでバックアップを復元する
「adb restore」を使って、上のコマンドで取ったバックアップファイルを復元します。 使い方は簡単。以下のコマンドを入力します。因みに、『Xepria NX』では”Sony PC Companion”というソフトを使ってバックアップとリストア(設定も復元可)が出来るので、上記のコマンドを使う必要性はないのですが。(このツールのせいか、コマンドもうまく動きません)