【发布时间】:2019-10-30 21:21:48
【问题描述】:
我要在模拟器中data/data/myPackage 下载这三个关于我的应用程序数据库的文件:
但是当我将它导入数据库浏览器时,我遇到了这个错误:
我认为问题在于权限(-rw------),因为当我导入具有此(-rw-rw----) 的其他数据库时,数据库浏览器可以打开它。
那么如何在数据库浏览器中更改权限或打开我的房间数据库?
这是我的房间配置:
@Database(entities = {Authentication.class}, version = 1)
public abstract class InsensitiveDatabase extends RoomDatabase {
private static InsensitiveDatabase INSTANCE;
public abstract AuthenticationDao authenticationDao();
public static InsensitiveDatabase getInsensitiveDatabase(Context context) {
if (INSTANCE == null) {
Editable editable = new SpannableStringBuilder("1234");
SafeHelperFactory factory = SafeHelperFactory.fromUser(editable);
INSTANCE = Room.databaseBuilder(context, InsensitiveDatabase.class, "insensitive.db")
.openHelperFactory(factory)
.build();
}
return INSTANCE;
}
}
【问题讨论】:
-
您在 SqliteBrowser 中打开哪个文件?
-
@m3g4tr0n,第一个,但我都试过了
-
“我如何更改权限”——在尝试在某些外部工具中使用它们之前,您需要将文件复制到您的开发机器上。 “在数据库浏览器中打开我的房间数据库?” -- 我不知道该工具是否支持 SQLCipher 数据库。
-
Encrypted Databases 说 DB Browser for SQLite 可以在 Mac OSX 和 Windows 上下载 SQLCipher 支持,或者如果你自己编译它,你可以在 Linux 上获得支持。但接着说你只能加密一个现有的数据库,所以如果你想要一个新的加密数据库,你首先需要创建一个新的数据库文件然后加密它。所以想知道它是否是一个自包含的所以可以' t 打开在别处加密的数据库。
-
"你的意思是DB浏览器不支持SQLCipher数据库?" -- 正如我所写,我不知道该工具是否支持 SQLCipher 数据库。
标签: java android database sqlite android-room