我想问一下如何从另一个应用程序中读取数据库。我们已经在设备上运行了一个应用程序,但我们有另一个项目引用了以前的数据库。
我有dbAdapter.class来读取数据库的路径,但是我发现了一些错误,比如“无法打开数据库。”
private static String DB_PATH = "/data/data/com.project.factory.apps/databases/";
private static final String DB_NAME = "dbData.db";
private static String DB_PATH_SDCARD = Environment.getExternalStorageDirectory() + "/data/com.project.factory.apps/databases/";
private Context myContext;
public dbAdapter(Context context) {
super(context, DB_NAME, null, 1);
myContext = context;
}
public boolean createDatabase(){
if(DatabaseIsExist()) {
return false;
} else{
return false;
}
}
private boolean DatabaseIsExist(){
checkDb = null;
try{
String myPath = DB_PATH + DB_NAME;
File directory = new File(DB_PATH_SDCARD);
if(!directory.exists())
directory.mkdirs();
checkDb = SQLiteDatabase.openDatabase("/data/data/com.project.factory.apps/databases/dbData.db", null, SQLiteDatabase.NO_LOCALIZED_COLLATORS);
}
catch(SQLiteException e){
Log.e("File not found in data",e.toString());
return false;
}
return true;
}
public List<t_listInfo> getList() {
try {
dataAdapter = DaoManager.createDao(this.getConnectionSource(), t_listInfo.class);
return dataAdapter.queryForAll();
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
MyActivity.Class 上的
我在调用db.createDatabase();
db.getReadableDatabase();
data = db.getList();
getList()
函数时出错,如果代码错误则需要建议或更正。