DatabaseWrapper无法转换为SQLiteDatabase

时间:2016-11-27 13:36:14

标签: android sqlite orm dbflow

我正在尝试使用DBFlow使用像这样FlowManager.getDatabase(SampleDatabase.NAME).getWritableDatabase()的FlowManager使用DBFlow使用DBFlow版本"4.0.0-beta1"来获取可写数据库但是我收到错误DatabaseWrapper cannot be converted to SQLiteDatabase。我在Github上发现了一个问题Can't use existing SQLite database ,但我不明白这意味着什么。我真的需要这样做,将感激任何帮助。

1 个答案:

答案 0 :(得分:0)

这意味着FlowManager.getDatabase(SampleDatabase.NAME).getWritableDatabase()方法会返回像SQLiteOpenHelper.getWriteableDatabase()这样的SQLiteDatabase对象。相反,它将返回DatabaseWrapper类的实例。

如果需要直接访问数据库,则应该能够使用FlowManager.getDatabase(SampleDatabase.NAME).getDatabaseFileName()获取数据库文件的文件路径。使用此路径可使用Android API打开数据库。但是,这绝对不是使用DBFlow的推荐方式,可能会导致意外行为。