簡単なプログラムで、Androidで、Web Storage (localStorage)の最大容量サイズを調べてみました。どのくらいまでのデータを保存できるのか、興味があったのです。
その結果、Android 2.3の標準ブラウザで確認したところ、最大2.4MBということが分かりました。試しに、iPhone(iOS 4.3)やGoogle Chromeでも試したのですが、同じ結果がでました。
確認の方法は、100KBずつlocalStorageにダミーデータを書き込んでいって、どこまで行けるかを確かめました。何度か試しましたが、最大2400KB(2.4MB)を越えたところで、エラーが出るのを確認しました。
Glaxy SとiPhone4で試してみたのですが、ストレージ容量が限界に近づくにつれ、ストレージへの書き込み速度が、かなり遅くなるのを感じました。
以下、念のため確認プログラムです。
<button onclick="test()">test</button> <div id="a"></div> <script type="text/javascript"> var bytes = 0; var idx = 0; var a = document.getElementById("a"); function test() { var s = "", tmp = ""; for (var i = 0; i < 1024; i++) tmp += "@"; for (var i = 0; i < 100; i++) { s += tmp; } localStorage["test" + idx] = s; idx++; bytes += 100; a.innerHTML = "NOW=" + bytes + "KB"; } </script>