2011-07-25 38 views
1

私は基本的にスクラブルのチートを持っているアプリを作成しています...私は、他のすべてのアプリがSQLデータベースやソートにデータ(単語)を保存しなければならないというインターネットの意識がなくても動作できることに気付きました。私は同じことをするつもりだった。私は私のMac上にある私のmysqlデータベースをエクスポートし、私はかなりたくさんあると思う13.2メガバイトでした。とにかく私が市場と同じことをする他のアプリを見ると、彼らはすべてkbでサイズを持っていました。 mysqlのサイズとsqliteのサイズには大きな違いがありますか?アプリのサイズを正しく表示しているかどうかはわかりません。ここで私はそれをやっている。設定]> [アプリケーション]> [アプリケーションの管理]を選択し、各パッケージの下にサイズを指定します。それは私がアプリのサイズを見なければならないところです。どのように私のアプリに私のdbをスケールすることができます。ファイルサイズが小さいSQLite?

答えて

0

市場に出回っているアプリのサイズに影響を与える要因はいくつかありますが、mysqlのダンプとは異なります。

1)データベース/スキーマのサイズとそれに含まれる単語の数。データベースにデータの列を追加するたびに、幾何学的にデータベースのサイズを効果的に増やします(つまり、2x3データベースに1行を追加すると、実際には3つのセルが追加されます)あなたの辞書に10,000語の単語がある場合、それはあなたのデータベースのサイズを非常に速くする方法を見ることができます。ステップ1:データベースから不必要な列をすべて削除します。

2)Androidマーケットのファイルは次のとおりです。 apkファイルは、本質的に非常に圧縮されたアーカイブファイルです。 SQLiteデータベースは基本的に単なるテキストファイルなので、パッケージを作成するために使用される圧縮アルゴリズムはこのデータを圧縮するのに非常に優れています。 .apkを作成すると、アプリケーションのサイズが大幅に減少します(Zomblingsのゲームは、圧縮されていない60MBの.apkファイルになりました)。ステップ2:apkを生成し、実際にどのファイルサイズを取得するかを確認します。

0

あなたがスペースに慣れていれば、単語リストをアプリケーションで圧縮テキストファイルとして保存することができます。その後、最初の起動時に新しいデータベースを作成し、単語リストをコピーします。

アプリが起動するとすぐにバックグラウンドスレッドでこれを実行した場合は、ユーザーが最初の単語検索を行う前に行うことができますもちろん、あなたが完了した主なスレッドにシグナルを送るためのメカニズムが必要です。そうでない場合は、しばらくお待ちください)。

関連する問題