SQLCipher致命信号11(SIGSEGV)位于0x756c66f2(代码= 1)

时间:2014-10-14 13:12:17

标签: android database sqlite sqlcipher

我正在使用SQLite开发Android应用程序,并希望使用SQLcipher更改为加密数据库。 我将icudt46l.zip添加到assets文件夹,将* .so添加到libs / armeabi文件夹。 由于这是升级,我想加密未加密的数据库。

我测试了三星S2(Android 2.3.3)和索尼Z1(Android 4.4.2)上的代码,它运行正常,来自未加密数据库的更新以及新的加密数据库。 使用我的三星Galaxy S4(Android 4.2.2),当我尝试打开未加密的数据库SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(originalFile, "", null)时,我不断收到致命信号11。 这是我的代码中第一次调用SQLcipher方法(除了net.sqlcipher.database.SQLiteDatabase.loadLibs(inContext))。 如果我正在从它在S4上运行的清单中更改package-name(那么它将获得一个新的干净数据库)。 当我想到OOM-Exception时,我再次测试了S2上的代码。我生成了一个10MB的SQLite未加密数据库,并正确地使用我的代码对其进行了转换。

任何人都可以给我一个提示,我做错了吗?

1 个答案:

答案 0 :(得分:1)

听起来这里的人有同样的问题,也许有帮助。

https://groups.google.com/forum/#!topic/sqlcipher/hZFpNSSP-c8