新增:2020.05.09
greendao在更新gradle版本之后代码混淆报错问题:
org.greenrobot.greendao.DaoException: Could not init DAOConfig
解决策略:
#-keep class **$Properties
#更改为
-keep class **$Properties{*;}
#原因还没分析
#完成的greendao代码混淆配置
#如下
-keep class org.greenrobot.greendao.**{*;}
-keep public interface org.greenrobot.greendao.**
-keepclassmembers class * extends org.greenrobot.greendao.AbstractDao {
public static java.lang.String TABLENAME;
}
-keep class **$Properties{*;}
-keep class net.sqlcipher.**{*;}
-keep public interface net.sqlcipher.**
-keep class net.sqlcipher.database.**{*;}
-keep public interface net.sqlcipher.database.**
-dontwarn net.sqlcipher.database.**
-dontwarn org.greenrobot.greendao.**
GreenDao主要是考虑四个对象:DaoMaster,DaoSession,DBHelper和DBManager。
1.DaoMaster主要是注册表
2.DaoSession主要是做数据库的增删改查的映射,DaoSession的初始化及使用都是依赖DaoMaster。
3.DBHelper作为初始化数据库的时候使用
4.DBManager作为我们的主要操作类来编码。
DBManager会做个DaoSession的封装,重写一下增删改查方法

在DBManager初始化的时候初始化该方法。
使用的时候直接调用Dao类的方法

具体使用,可以参考这篇博文:http://www.mamicode.com/info-detail-1835440.html
本文介绍了在更新gradle版本后,使用GreenDao遇到的代码混淆报错问题。解决方案涉及DaoMaster、DaoSession、DBHelper和DBManager四个关键对象的理解。DaoMaster负责注册表,DaoSession用于数据库操作,DBHelper用于初始化数据库,而DBManager作为主要操作类,封装了DaoSession并重写增删改查方法。在初始化DBManager时进行相关配置,使用时直接调用Dao类方法。如需了解更多详情,可以参考相关博文。
1070

被折叠的 条评论
为什么被折叠?



