私は、いくつかのデータを表示するためにCursorAdapterを使用するListActivityを持っています。このデータはWebサービス呼び出しの結果です。データベース書き込みのスピードアップ
Webサービスコールから、org.json。*ライブラリを使用して解析し、その結果をアプリケーションのSQLite3データベースに書き込んでいます。 ListActivityのCursorが再度照会され、データがリストに表示されます。
私の問題は、データベースの書き込みが遅すぎることです。私が考えることができる唯一のことは、CursorAdapterを使用せず、このデータをメモリに保持することです。私は誰かが物事をスピードアップするために別の提案をしたいと考えていました。おそらく一種の一括挿入?
私は挿入を行うためにContentProviderを使用していることに注意してください。そこで私はgetContentResolver()。insert(...)を呼び出します。応答へ
時間:ここで
は、LANを介したデータの56行で取得し、それらを表示されたテストからいくつかの時間があるJSONを解析する178ms
時間:書き込みに16msの
時間データベースへの56行:5714ms
このデータ量では、最終的にデータベース書き込み時間が1000ms未満になると思います。
私はコードを見たいと思う、これは本当に遅いようです。 –
トランザクションを使用してデータをブロックとしてブロックに書き込みますか? – thaussma
私はContentProvider – Andrew