然后我从我的主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
}
}
解决方法:
DBTest db1 = new DBTest(this.getApplicationContext());
上下文不能为null
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。