/**
* @Title: changeDatabasesDir
* @Description: TODO: Change default location of sqlite databases.
* @param @param mContext
* @return void
* @throws
*/
public static void changeDatabasesDir(Context mContext) {
try {
Field field;
field = ContextWrapper.class.getDeclaredField("mBase");
field.setAccessible(true);
// 获取mBase变量
Object obj = field.get(mContext);
field = obj.getClass().getDeclaredField("mDatabasesDir");
field.setAccessible(true);
// 创建自定义路径
File file = new File(Path.DATABASES);
field.set(obj, file);
} catch (NoSuchFieldException e) {
// TODO Auto-generated catch block
MyLog.e(e.toString());
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
MyLog.e(e.toString());
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
MyLog.e(e.toString());
}
}
Android自定义Sqlite数据库位置
最新推荐文章于 2024-04-01 05:08:33 发布