java - 将 SQLCipher 与 android 附带的 sqlite 数据库文件一起使用

标签 java android sqlcipher

我在 assets 文件中重置了一个数据库文件。

如何在android中使用SQLCipher加密数据库?

最佳答案

这会有点复杂。由于 SQLite 和 SQLCipher for Android 的数据库文件格式不同,并且由于您想要发布未加密的数据库,因此您必须做一些事情。

首先,我会得到 SQLiteAssetHelper将向您的环境提供未加密的数据库。

然后,使用适用于 Android 的标准 SQLCipher 创建一个空但已加密的数据库。

接下来,您需要实现代码,将数据从打包但未加密的数据库中复制出来,并将其插入到空但加密的数据库中。

完成后,您可以关闭并删除打包但未加密的数据库,只使用加密的数据库。

这可能会成为 SQLiteAssetHelper 的有用扩展,有朝一日......

关于java - 将 SQLCipher 与 android 附带的 sqlite 数据库文件一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32367410/

相关文章:

java - Activity 销毁或重启期间的后台工作

android - Chrome TTS、Google TTS、Cloud Speech API 和 Android TTS 之间有什么区别?

android - 如何在 Android 中设置红色 TextView 的删除线

javascript - 尽管端口转发正常,但应用程序无法向本地主机发出请求

安装 Xcode 5 后不再构建使用 sqlcipher 的 iOS 项目

iphone - 在iphone中使用sqlcipher解密

java - 使用 Eclipse 进行远程调试

java - 鉴于 Java(语言)是平台独立的,为什么 JVM 不是平台独立的?

java - JPA 合并导致重复

sqlite - Windows 上使用 cygwin 的 sqlcipher