というわけで、ぶりーふですくりぷしょんな備忘録。
手順その一
AndroidManifest.xml の <manifest> に android:installLocation という attribute を追加する。取りうる値は、以下の通り。
- auto
- システムにおまかせ
- internalOnly
- 内部ストレージ (一般的には携帯電話本体) にのみインストール可能に
- preferExternal
- 外部ストレージ (一般的には SD card) を希望。駄目なときは内部ストレージに。
通常は、 auto で良いのではないかしら。 (参考: android.R.attr#installLocation, <manifest>)
手順その二
android:installLocation という attribute は API Level 8 じゃないと「シラネーヨ」って言われるので、 build target API level を 8 (あるいはそれ以上) に変更。 <uses-sdk minSdkVersion=""> はもとのままで。
手順おわり
SD card に移したアプリは、 SD card が unmount されると死んじゃう。というわけで、どんなアプリでも SD card に移せるわけじゃ無い点に注意。
詳しくは、 Dev Guide の "App Install Location" あたり参照。