我有一个Android应用程序,我需要从同一个活动访问两个不同的数据库。
我正在使用Ormlite来读取/写入数据库。
public class MyActivity extends OrmLiteBaseActivity<MyDatabaseHelper>
我需要为另一个数据库使用另一个数据库帮助程序。
有人可以指导我如何实现这个目标吗?
我应该使用相同的DatabaseHelper并在那里进行修改以支持这两个数据库吗?或者有没有办法在同一个活动中使用不同的databaseHelpers?
答案 0 :(得分:0)
在您的情况下,我认为更好的解决方案是使用单独的帮助程序,而不是扩展OrmLiteBaseActivity
。
public class DatabaseHelperA extends OrmLiteSqliteOpenHelper {
public static DatabaseHelper getInst(){
return inst;
}
public static void init(Context c){
if (inst == null) inst = OpenHelperManager.getHelper(c, DatabaseHelperA.class);
}
public DatabaseHelper(Context context) {
super(context, "a.db", null, 1);
}
}
public class DatabaseHelperB extends OrmLiteSqliteOpenHelper {
public static DatabaseHelper getInst(){
return inst;
}
public static void init(Context c){
if (inst == null) inst = OpenHelperManager.getHelper(c, DatabaseHelperB.class);
}
public DatabaseHelper(Context context) {
super(context, "a.db", null, 1);
}
}