2011-02-03 54 views
0

我有一個有趣的問題,我的手機上的代碼運行良好,但是在模擬器上運行時,一旦應用程序試圖從數據庫獲取值,就會發生崩潰。模擬器中的Android SQLite崩潰,但沒有電話?

這裏是一個崩潰它

/** Used to retrieve our lowest stored val */ 
public int GetLowestVal(){ 

    // Get our databases results 
    Cursor result = null; 
    try { 
     // Get our databases results 
     result = super.getAll(); 

    } catch(SQLException anyDbError) { 
     // Errors? TODO 
    } finally { 
     // Finally TODO 
    } 


    // Setup initial lowest val 
    int lowestVal = 0; 

    // Move through results and compare them 
    while(result.moveToNext()){ 
     // Get our place from the DB 
     int index = Integer.parseInt(result.getString(1).trim()); 

     // Last index should be lowest 
     if (index == 10){ 
      lowestVal = Integer.parseInt(result.getString(3).trim()); 
     } 
    } 

    // Return our value 
    return lowestVal; 

} 

的DB輔助功能,它拋出的錯誤是:

getWriteableDatabase()的遞歸調用。

+1

請給我們一個完整的堆棧跟蹤。 – 2011-02-03 01:17:54

回答

0

比較遺憾的是,問題是,我試圖仍然編輯表中onCreate()方法導致getWrteableDatabase()遞歸調用。

它沒有在模擬器上工作,但在手機上工作的原因是因爲在將任何內容添加到onCreate之前,數據庫已在手機上創建,但在其他設備上部署會導致崩潰。