方法 openOrCreateDatabase(String, int, null) 未定义

2023-11-23

我正在尝试按如下方式打开数据库:

SQLiteDatabase myDatabase;
myDatabase = openOrCreateDatabase("sudoku.db", Context.MODE_PRIVATE, null);

当我在 Service 类中实现此代码时,该代码工作正常,但是当我尝试在 GeneratorThread 类的 onPostExecute 事件处理程序中实现此代码(实现 AsyncTask)时,出现以下错误:

The method openOrCreateDatabase(String, int, null) is undefined for the type GeneraterThread


看来您刚刚为函数设置了错误的参数。

SDK中有这些定义:

public static SQLiteDatabase openOrCreateDatabase (String path, SQLiteDatabase.CursorFactory factory, DatabaseErrorHandler errorHandler)

public static SQLiteDatabase openOrCreateDatabase (String path, SQLiteDatabase.CursorFactory factory)

public static SQLiteDatabase openOrCreateDatabase (File file, SQLiteDatabase.CursorFactory factory)

但你调用该函数是错误的。

也许你想打电话openDatabase (String path, SQLiteDatabase.CursorFactory factory, int flags)?

在这种情况下,你只是以错误的顺序设置参数 - 你正在做

openOrCreateDatabase("sudoku.db", Context.MODE_PRIVATE, null); //WRONG

instead:

openDatabase("sudoku.db", null, Context.MODE_PRIVATE); //RIGHT
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

方法 openOrCreateDatabase(String, int, null) 未定义 的相关文章

随机推荐