2012-03-29 24 views
2

<item>170,000</items>string.xmlを追加した後。ワークスペースの構築が遅くなり、ヒープスペースとjvmメモリーが増えますが、まだ遅いです。プログラムを実行する前に、毎回4時間編集する必要があります。アイテム数が多すぎるString.xmlが遅すぎる

解決方法はありますか? (ubuntu 11.10でgnome 3.0を使用しています)。

+2

170k文字列とは何ですか? –

+4

xmlファイルのデータがあまり多くないように設計されていません –

+0

XMLファイルはデータベースではありません。 – EJP

答えて

5

string.xmlに文字列を挿入する代わりに、/res/rawの中にファイルを配置して、初めてアプリケーションを起動するときにdbに挿入してみてください。

+1

または、より良い方法では、['SQLiteAssetHelper'](https://github.com/jgilfelt/android-sqlite-asset-helper)を使用して、アプリケーションと共にデータベースをパッケージ化します。 – CommonsWare

+0

私はファイルリーダーを使用しています..それはさらに悪いです。私はJavaでsqlを使用していますが、アンドロイドではありません。どのように私はそれを行うためにSQLソフトウェアをダウンロードする必要がありますか?そこに無料のサーバーのようなそこに私は私のファイルをアップロードすることができますし、アンドロイドアプリからそれを開始します。 – ImGeorge

+0

@ Immanuel.I.George:それを実行するためにSQLソフトウェアは必要ありません。 Androidには 'SQLite'が付属しています。 – Macarse

0

あなたがしていることを正確にはわかりません。このXMLファイルをどのように構築していますか?多分あなたはJavaの文字列の連結を使用していますか?それは確かに非常に遅いでしょう。私はXMLStreamWriterのようなものを使ってやります。しかし、あなたのシナリオをより詳細に記述する必要があります。たとえば、Eclipseがどこに入ってくるのかわかりません。

+0

実際にEclipseが入ってきます。私は170,000の言葉を参照として使用するか、またはそれが正しいか何かが表示されている場合はユーザー入力と比較し、それより複雑です。さて、私の最大の問題は、この単語を保存する便利な方法を見つけることです、まず私はファイルリーダーを使用しますが、それも見ていません。私はJavaでファイルリーダーを使用しました。プロジェクトのフォルダにファイルをコピーして名前を呼び出すだけで簡単でした。簡単でした。しかし、私はfile.txtをコピーする正確な場所を知りません。私は.txtファイルが.apkファイルでパッケージ化されることも確かめていませんでした。 – ImGeorge

+0

だから私のオプションはをstring.xmlに使っていましたが、遅くなりました。それはビルドに数時間かかりました。今はsql liteが残っていますが、それは.apkでパッケージされているかどうかは分かりません。私を助けてください – ImGeorge