今天在用eclipse写android项目时,在操作数据时,报如下的错误原因:
java.lang.NullPointerException
at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:118)
at cn.jbit.service.UserInfoService.save(UserInfoService.java:17)
at cn.jbit.test.TestDB.testSave(TestDB.java:12)
at java.lang.reflect.Method.invokeNative(Native Method)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:529)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1448)
使用单元测试下面的方法时,产生错误:
public void testSave(){
UserInfo userInfo =new UserInfo("小明",1,"14545343");
us.save(userInfo);
}
后来检查发现,主要的原因是:
将UserInfoService us= new UserInfoService(getContext()); 放在了以上方法的外面。