- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
Crashlytics 报告了 greendao 中的大量崩溃:
> Caused by de.greenrobot.dao.DaoException: Could not init DAOConfig
> at de.greenrobot.dao.internal.DaoConfig.<init>(DaoConfig.java:94)
> at de.greenrobot.dao.AbstractDaoMaster.registerDaoClass(AbstractDaoMaster.java:44)
> ... Caused by java.lang.NoSuchFieldException: TABLENAME
> at java.lang.Class.getField(Class.java:1104)
> at de.greenrobot.dao.internal.DaoConfig.<init>(DaoConfig.java:56)
> at de.greenrobot.dao.AbstractDaoMaster.registerDaoClass(AbstractDaoMaster.java:44)
似乎只有运行 Android 5.0 Lollipop 的三星设备(SM-G900V、SM-900A、SM-900P、SM-870A、SCH-545 等)。
根据我的研究,他们的设备上似乎有三星类加载器实现问题导致了这种情况。人们在这个问题中提到可能的加载程序是一个问题: https://code.google.com/p/gmaps-api-issues/issues/detail?id=8314
人们建议向 Proguard 添加 keep 规则,但我们在应用程序中根本没有使用 Proguard。不过,我们确实启用了多索引。
有人对修复或解决方法有建议吗?
最佳答案
我遇到了同样的问题。我知道这是一个proguard问题。
如果您使用 3.2.0 以上的 greenDao 版本,请尝试下面的 proguard-rules
-keepclassmembers class * extends org.greenrobot.greendao.AbstractDao {
public static java.lang.String TABLENAME;
}
-keep class **$Properties`
关于android - 使用 Android 5.0 的三星设备上的 greendao DaoConfig init 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34216163/
我尝试使用一个旧的 android 应用程序,它使用 Green Dao 这样的美国数据库,这个应用程序也有味道,所以我编译并安装了 apk,但是应用程序无法启动它给出了这个异常: Process:
我正在使用以下 ProGuard 规则: -keepclassmembers class * extends org.greenrobot.greendao.AbstractDao { *; }-ke
Crashlytics 报告了 greendao 中的大量崩溃: > Caused by de.greenrobot.dao.DaoException: Could not init DAOConfi
我是一名优秀的程序员,十分优秀!