我正在使用SQLite开发一个Android应用,并希望使用SQLcipher更改为加密数据库。我在资产文件夹中添加了icudt46l.zip,在libs / armeabi文件夹中添加了* .so。由于这是升级,因此我想加密未加密的数据库。
我在Samsung S2(Android 2.3.3)和Sony Z1(Android 4.4.2)上测试了代码,它可以正常工作,即来自未加密数据库的更新以及新的加密数据库。使用我的Samsung Galaxy S4(Android 4.2.2),当我尝试打开未加密的数据库时,会不断收到致命信号11 SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(originalFile, "", null)
。这是我代码中SQLcipher方法的第一次调用(之外net.sqlcipher.database.SQLiteDatabase.loadLibs(inContext)
)。如果要更改清单中的程序包名称,则该程序包将在S4上运行(因此它将获得一个全新的干净数据库)。当我想到OOM异常时,我再次在S2上测试了代码。我生成了一个10MB的SQLite未加密数据库,并用我的代码正确地对其进行了转换。
谁能给我一个提示,我在做什么错?
听起来这里的人有同样的问题,也许有帮助。
https://groups.google.com/forum/#!topic/sqlcipher/hZFpNSSP-c8
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句