GreenDao 使用现有的数据库而不是创建一个

GreenDao use existing database instead of creating one

我正在使用 green dao,我已经到了支持多语言的地步,我想为每种语言使用不同的数据库。

到目前为止,我一直在使用 green dao 创建我的数据库。现在我想在 assets 中有多个数据库,只需打开我需要的那个,然后用 green dao 操作它。

我该怎么做?

这是我创建数据库的方法:

public static DaoMaster getDaoMaster(Context context)
{
    if(daoMaster == null)
    {
        OpenHelper helper = new OpenHelper(context, "dbSlo", null) {
            @Override
            public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
            }

        };
        //DevOpenHelper helper = new DevOpenHelper(context, "tronpos-db", null);
        db = helper.getWritableDatabase();
        daoMaster = new DaoMaster(db);
    }

    return daoMaster;
}

现在我不想创建一个,而是想打开一个现有的(我在资产中拥有的 dbSlo),然后正常地对其进行操作。

打开前复制。就在您的应用程序 class 的 onCreateof 中调用类似于此处描述的方法:Copy Database from assets folder in unrooted device

这样您就可以通过从资产中复制来检查先前存在的或创建新的。