我在 Android Studio 的 Sqlite 中使用 openOrCreateDatabase 保存了一个数据库。我知道它保存在 Android 设备的根文件夹中(特别是数据/数据),但我看不到原始数据库文件。
我在 Studio 中尝试了 adb shell 命令和 Android 设备管理器,但我看不到它。
有没有办法在不root手机的情况下更改数据库的路径或访问data/data中的数据库?
最佳答案
如果没有生根设备,您将无法访问数据文件夹。
但是您可以将数据库从数据文件夹复制到 SD 卡,例如下载文件夹
File backupDB = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), "Database.db");
File currentDB = context.getDatabasePath(DATABASE_NAME);
if (currentDB.exists()) {
FileChannel src = new FileInputStream(currentDB).getChannel();
FileChannel dst = new FileOutputStream(backupDB).getChannel();
dst.transferFrom(src, 0, src.size());
src.close();
dst.close();
}
还需要权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
关于java - 在 Android Studio 中更改数据库路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27899323/