2010-07-03

Froyo で Apps2SD

Froyo で、アプリを SD card にインストール (あるいはインストール後に移動) できるようになったけど (いわゆる Apps2SD) 、何もしなくてもこれが可能になるわけではないわけです。

というわけで、ぶりーふですくりぷしょんな備忘録。


手順その一

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" あたり参照。