GreenDao3.0之后支持了SqlCipher给数据库加密,集成使用网上博客一堆一堆,我在这里记录一下:
1.SqlCipher包只需要在gradle加入如下代码,无需关心jar和so文件(aar包解压可以得到jar和so文件)。
implementation 'net.zetetic:android-database-sqlcipher:version'
2.使用GreenDao的gradle插件生成代码,数据库加密需要调用DaoMaster.DevOpenHelper的getEncryptedWritableDb(passwprd)方法。
DaoMaster.DevOpenHelper mDevOpenHelper = new DaoMaster.DevOpenHelper(context, dbName);
DaoSession mDaoSession = new DaoMaster(mDevOpenHelper.getEncryptedWritableDb(passwprd)).newSession();
3.SqlCipher的net.sqlcipher.database.SQLiteDatabase提供了加密功能,其他方法与android自带SQLiteDatabase一样