1
我正在爲android編寫鍵盤應用程序,而我是SQL DB中的字符串鍵值。Android中的SQL方式太慢...我如何加快速度?
下面是一個鍵的示例行。在整個數據庫中,我有大約160個這樣的行。
(BTNID,TEXTADJUST,BUTTONSCALE,BUTTONSCALECNT,SPACINGLR,SPACINGTB,BTNOPA,BTNTEXT,BTNTEXTONCLICK,BTNTEXTONSHIFTCLICK,BTNTEXTCOLOR,BTNHUE,BTNSAT,LAYOUTSTDALTNUM,ATROW,BTNHUEHIT) VALUES('1','0','1','1','2','5','255','Q','qQ','Qq','0xFFFFFFFF','0','0','STD','1','0')
我被
TBL_NAME = preferences.getString("TBL", "EnglishZLayout");
SqlHelper sqlHelper = new SqlHelper(this, "TK.db", null, 1);
SQLiteDatabase DB = sqlHelper.getReadableDatabase();
String TBL_NAME_BTN = TBL_NAME.replace("ZLayout", "ZButtons");
Cursor c = DB.rawQuery("SELECT * FROM "+TBL_NAME_BTN, null);
c.moveToFirst();
while (c.isAfterLast() == false) {
...
閱讀本價值觀和奇怪的是,大約需要20-30秒加載。任何想法如何加快它?
我無法在應用程序中存儲關鍵值,因爲用戶必須能夠更改它們。
謝謝!
嗯......有些東西似乎是錯的。 SQL通常不需要這麼長時間。這裏正在做什麼工作? –
你確定它(僅)需要這麼長時間的查詢嗎? 20秒似乎超出了常規,甚至在模擬器上......你是否在遊標循環中嘗試了(僅)非常簡單的日誌輸出,並在真實設備上測試了這一點? –
好吧,它也繪製矢量形式的按鈕等,但它不需要很長時間,因爲我正在切換已經加載的佈局時,它們會立即出現。 – Roger