Android 2.2以降では一部アプリをSDカードに移せるが、通常はアプリ開発者が有効にしてくれないと移動することができない。ただしAndroid SDKのadb shellから端末の設定を変更する事で、これまで移動できなかったアプリもSDカードへ移動することが
できるようになる。
root取得必要性については
◇ユーザアプリを移動するだけならroot化は不要
◇システム(=プリインストール)アプリを移動する場合にはrootが必要となる
今回試したのはhtc x06htII。適当にはしょって説明すると、
Android SDKをPCにインストール
USBデバッグを有効にしてPCと接続
コマンドプロンプトから"adb shell pm getInstallLocation 2"を実行
D:\android-sdk\platform-tools>adb shell pm setInstallLocation 2
adb server is out of date. killing...
* daemon started successfully *
設定を確認する場合:"adb shell pm getInstallLocation"を実行
D:\android-sdk\platform-tools>adb shell pm getInstallLocation
adb server is out of date. killing...
* daemon started successfully *
2[external]
rootが取れていればシステムアプリもSDカードへ移動可能。
前記の作業を完了しました次のようにシステムを軽くしましょう!
まずは
アップデータをすべて削除して出荷時の状態に戻すしたら"/system/app"以下にあるapkファイルを削除。
Androidマーケットから最新版をインストールし直せばSDカードへ移動可能になる。
プリインストールされているFlash Playerは通常、移動できないがrootを取った上で今回の方法を使えばSDカードへ移動ができた。
なお、システムアプリについてandroidマーケットからダウンロードできないものありますので、削除する前に確認してから実施してください。