我已经用SQLCipher加密了一个SQLDB ......终端工作没有问题.... 我试图在ANDROID环境中的日食中打开它,但没有成功...... 我已经尝试了在互联网上找到的所有可能的例子,但没有成功......
我把数据库文件放在assets目录中,是不是?
有时LogCat给我db加密或者不是db,有时候没有这样的表(我试图查询)....
任何人都可以帮助我吗?
我想有一个简单的例子,如何阅读和打开SQLCipher加密数据库。
THX
答案 0 :(得分:0)
我已经尝试了在互联网上找到的所有可能的例子而没有成功。
我不知道你想要达到的任何例子。
我把数据库文件放在assets目录中,是不是?
这取决于你要做什么以及你做的代码。
我的猜测是,您正在尝试使用您的应用程序打包加密数据库,以便与SQLCipher for Android一起使用。这是没用的,因为任何有能力进入数据库的人都有能力找到你的解密密钥或找到能找到你解密密钥的其他人。
话虽这么说,这样做的最佳解决方案是port SQLiteAssetHelper
将SQLCipher用于Android的类而不是标准的SQLite类。如果您自己执行此端口,则可以根据SQLiteAssetHelper
说明将数据库打包为assets/
中的ZIP文件。
答案 1 :(得分:0)
我在Android中使用了SQLCipher,但我所做的是第一次将其复制到手机内存,然后将其用作普通的SQLite数据库。
是否要求数据库位于资产文件夹中?