【Android】log出现didn't find class "net.sqlcipher.database.SQLiteOpenHelper"

在使用greendao时,我们会在日志中看到didn't find class "net.sqlcipher.database.SQLiteOpenHelper",这是由于greendao的安全机制所造成的,greendao建议我们将数据库进行加密,当然,如果你没有加密需求,可以忽略掉日志,这并不影响你使用greendao,如果你是强迫者患者,那你可以通过以下方式来解决。

导入第三方加密库
implementation 'net.zetetic:android-database-sqlcipher:3.5.7@aar'

在初始化数据库时,使用加密方式获取Database

DaoMaster.DevOpenHelper helper = new DaoMaster.DevOpenHelper(this, "shujuku.db", null);
        
 // Database dataBase = helper.getWritableDb();  // 注释掉原先的获取方式
Database database = helper.getEncryptedWritableDb("abc");

daoSession=new DaoMaster(database).newSession();

abc即密码,你可以替换成你想使用的字符串

现在再次运行程序,就不会再出现didn't find class "net.sqlcipher.database.SQLiteOpenHelper"

你可能感兴趣的:(【Android】log出现didn't find class "net.sqlcipher.database.SQLiteOpenHelper")