通过使用兼容Android 5.0的SqlLiteOpenHelper类解决问题。
代码示例:
首先,我们需要创建一个继承自SqlLiteOpenHelper的DatabaseHelper类,并在onUpgrade方法中添加升级逻辑。
public class DatabaseHelper extends SQLiteOpenHelper {
public static final int DATABASE_VERSION = 1;
public static final String DATABASE_NAME = "MyDatabase.db";
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
// Create tables here
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// Upgrade logic here
}
}
在应用中,我们需要实例化这个类,并在需要执行查询的地方使用它。示例如下:
DatabaseHelper databaseHelper = new DatabaseHelper(getApplicationContext()); SQLiteDatabase sqLiteDatabase = databaseHelper.getReadableDatabase(); Cursor cursor = sqLiteDatabase.query(TABLE_NAME, null, null, null, null, null, null);
这样就可以兼容Android 5.0并解决SqlLite查询错误了。