2011-01-13 32 views
4

我創建了一個DBTest類SQLiteOpenHelperGetReadableDatabase錯誤android

然後我從我的主UI調用了這個。

當我點擊DB.GetReadableDatabase()時,它崩潰並且日誌沒有任何幫助,只是說空指針,但我不知道在哪裏看。

一切正常,如果我使用

SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY); 

同一個數據庫

這裏是班助手及以下錯誤:

public class DBTest extends SQLiteOpenHelper { 

      private static String DB_NAME = "DB"; 

      private SQLiteDatabase myDataBase; 

      private final Context myContext; 

      public DBTest(Context context) { 

       super(context, DB_NAME, null, 1); 
       this.myContext = context; 
      } 

      @Override 
      public void onCreate(SQLiteDatabase db) { 
       // TODO Auto-generated method stub 

      } 

      @Override 
      public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
       // TODO Auto-generated method stub 

      } 
    } 

下面是在錯誤發生的情況:

public class Main extends Activity 
{ 

    DataBaseHelper db = new DataBaseHelper(null); 
    static SQLiteDatabase Db; 



    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     SQLiteDatabase Db; 

     DBTest db1 = new DBTest(null); 

     Db = db1.getReadableDatabase(); <<< blow up here 


     } 
} 
+1

它告訴你空指針在哪裏......向我們顯示日誌。 – Falmarri 2011-01-13 01:12:00

回答

4
DBTest db1 = new DBTest(this.getApplicationContext()); 

上下文不能爲空

相關問題