apkファイルのインストール時に INSTALL_FAILED_INSUFFICIENT_STORAGE と出る場合

エミュレータでアプリ領域の容量を変更する方法

アプリをapkファイルでインストールするときに、次のように出てインストールできないことがあります。
エミュレータでは特に起こりやすいです。

69 KB/s (25507357 bytes in 359.923s)
        pkg: /data/local/tmp/TestApp.apk
Failure [INSTALL_FAILED_INSUFFICIENT_STORAGE]

INSTALL_FAILED_INSUFFICIENT_STORAGE このエラーはインストール先のディスク容量が足りない場合です。

実機であれば、不要なデータやアプリを削除するかSDカードなどに移動して、空き容量を増やします。

エミュレータの場合、起動オプションや設定ファイルでディスク容量を変更できます。

空き容量を調べる方法
エミュレータの起動オプションで容量を変更する方法
設定ファイルで容量を変更する方法

空き容量を調べる方法

まず端末・エミュレータの空き容量を調べるには、adbからshellでログインします。

C:\> adb shell

dfコマンドで容量がわかります。

# df
df
Filesystem             Size   Used   Free   Blksize
/dev                   410M    32K   410M   4096
/mnt/asec              410M     0K   410M   4096
/mnt/obb               410M     0K   410M   4096
/system                 86M    86M     0K   4096
/data                   92M    52M    39M   4096
/cache                  62M     1M    60M   4096
/mnt/sdcard            498M     4M   493M   2048
/mnt/secure/asec       498M     4M   493M   2048

標準設定のエミュレータではアプリデータの保存先『 /data 』の容量が小さく設定されています。

エミュレータの起動オプションで容量を変更する方法

エミュレータの起動オプションに『 -partition-size 』をつけてアプリ領域の容量を増やすことができます。

"C:\Program Files (x86)\Android\android-sdk\tools\emulator.exe" -avd 【エミュレータ名】 -partition-size 【dataパーティションの容量(単位はMB)】

例
"C:\Program Files (x86)\Android\android-sdk\tools\emulator.exe" -avd test -partition-size 512

ちなみにemulator.exeのヘルプでは次のようになっています。

    -partition-size <size>                system/data partition size in MBs

つまりdata領域だけでなくsystem領域の容量も変わります。

このオプションをつけて起動すると、容量が増えていることがわかります。

# df
df
Filesystem             Size   Used   Free   Blksize
/dev                   410M    32K   410M   4096
/mnt/asec              410M     0K   410M   4096
/mnt/obb               410M     0K   410M   4096
/system                496M    87M   408M   4096
/data                  496M    52M   444M   4096
/cache                  62M     1M    60M   4096
/mnt/sdcard            498M     4M   493M   2048
/mnt/secure/asec       498M     4M   493M   2048

ただこの方法では起動時に毎回オプションをつける必要があります。

設定ファイルで容量を変更する方法

エミュレータの設定ファイルでアプリ領域の容量を増やすには、エミュレータデータのフォルダにある『 config.ini 』を変更します。

C:\Users\【ユーザ名】\.android\avd\【エミュレータ名】.avd\config.ini

このファイルに次のように追記します。単位はMBです。

disk.dataPartition.size=512

これで容量を調べると、容量が変わっています。
この設定の場合は起動オプションと違い、data領域のみ容量が変わります。

# df
df
Filesystem             Size   Used   Free   Blksize
/dev                   410M    32K   410M   4096
/mnt/asec              410M     0K   410M   4096
/mnt/obb               410M     0K   410M   4096
/system                 86M    86M     0K   4096
/data                  496M    52M   444M   4096
/cache                  62M     1M    60M   4096
/mnt/sdcard            498M     4M   493M   2048
/mnt/secure/asec       498M     4M   493M   2048

AVD(Android Virtual Device) Managerでは、設定する項目はないようです。
partition sizeを変更できるのは、Hardwareの項の『Cache partition size』しかありませんが、これはdata領域ではなく、キャッシュ領域のものです。

関連記事

スポンサーリンク

Line meter ラインメーター

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る