2012-01-24 6 views
0

HTC Incredibleで実行しているときに私のアプリが「非常に遅い」というフィールドのクライアントからのレポートがあります。このような問題をよりよく診断するため、私のアプリにはパフォーマンステストビューが付属しています。このビューは、1行、10行、100行を一時的なSQLiteデータベースに挿入するテストを実行します。データベースは内部電話機のメモリに保持されます。 (約信じられないほどのと同じ仕様である)私のHTCエボでAndroid搭載端末でデータベースの書き込みが極端に遅くなる原因は何ですか?

、この試験は、100ミリ秒、150ミリ秒に10で1つの挿入を行うことができ、オン100約1000で、MS(1秒)

1つのインサートは1000ミリ秒を要し、10は1500ミリ秒を要し、100は15000(15秒)を要する。

これは基本的に10倍の遅さです。データベース操作がこのユーザーにとって非常に遅いのはなぜだろうか、そしてこの問題を解決するためにどのような手順をとることができるのだろうか?これらのperf番号は、デバイスの再起動後です。

これは、私は、それぞれ、1、10、または100回やって操作です:

private void addEvent(String title) { 
    SQLiteDatabase db = eventsData.getWritableDatabase(); 
    ContentValues values = new ContentValues(); 
    values.put(PerfTestSQLHelper.TIME, System.currentTimeMillis()); 
    values.put(PerfTestSQLHelper.TITLE, title); 
    db.insert(PerfTestSQLHelper.TABLE, null, values); 
} 
+0

彼はどのようなOSやROMを使用していますか?あなたはどちらを使っていますか? – L7ColWinters

+0

彼はジンジャーブレッド(2.3)と同じです(2.3.3) – esilver

答えて

関連する問題