Androidのアセットにデータベースファイル(SQLite3)を含めることで、アプリからデータベースを参照することが可能です。詳しくは下記のTipsをご覧ください。
ただし、Androidのassetsフォルダに配置できるのは、最大1MBのファイルになっている模様です。
そこで、jsWaffleでもファイルを分割して assets に配置する方法を用意しました。
まず、ファイルを分割します。分割サイズは、1MB以下にします。そして、ファイルは、「ファイル名.ファイル番号」の形式で配置します。
+ /assets/www/data/ | - hoge.db.1 | - hoge.db.2 | - hoge.db.3 | - hoge.db.4 | - hoge.db.5
そして、初回起動時にSDカードにファイルをコピーするコードを記述します。
<script>
var savepath = "/sdcard/hoge.db";
if (!droid.fileExists(savepath)) {
droid.mergeSeparatedAssetsFile("www/data/hoge.db", "/sdcard/hoge.db");
}
</script>
以下、1MBごとにファイルを分割するツールを用意しました。
Windowsのバッチファイル+Rhinoで作っています。
(すみません。上記のツールは、name0,name1,name2...とファイル名をつけてしまうので、番号が1から始まるように修正してみてください。)
分割したいファイルをドラッグ&ドロップするだけで分割します。
日本語プログラミング言語「なでしこ」( http://nadesi.com )を使った方法は以下です。
スクリプトをダウンロードしたら、なでしこで実行してください。