如何更改android数据库存储路径?数据库存储的默认路径是/ data / data / databases,我想把它保存到SD卡,该怎么办?
答案 0 :(得分:6)
这是一个古老的问题,但回答可能有助于其他人。
最简单的方法(仅适用于调试环境)是修改类的构造函数:
public class MySQLiteOpenHelper extends SQLiteOpenHelper {
MySQLiteOpenHelper(Context context) {
super(context, "/mnt/sdcard/database_name.db", null, 0);
}
}
请记住使用以下行更改生产环境:
public class MySQLiteOpenHelper extends SQLiteOpenHelper {
MySQLiteOpenHelper(Context context) {
super(context, "database_name.db", null, 0);
}
}
答案 1 :(得分:3)
SQLite的openDatabase()
允许您为数据库提供位置。
但是,您应该使用Context.getExternalFilesDir()来查找SD卡的路径,而不是硬编码。该链接有一些很好的代码示例,您应该使用它们。
答案 2 :(得分:2)
您可以从任何地方放置和打开数据库,即
SQLiteDatabase.openDatabase("/sdcard/mydatabase.db", null, SQLiteDatabase.OPEN_READONLY);