且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

与OrmLite和ProGuard的混淆问题

更新时间:2023-12-03 23:44:40

在两者的ProGuard的项目文件,您的ProGuard的优化文件,把下面的(如果你使用的优化)。

Put the below in both your proguard-project file and your proguard-optimization file (if you use optimization).

 # Your application may contain more items that need to be preserved; 
 # typically classes that are dynamically created using Class.forName: 
 # ormlite uses reflection 
 -keep class com.j256.** { *; }
 -keep class com.j256.**
 -keepclassmembers class com.j256.**
 -keep enum com.j256.**
 -keepclassmembers enum com.j256.**
 -keep interface com.j256.**
 -keepclassmembers interface com.j256.**

-keepclassmembers class * { 
  public <init>(android.content.Context); 
} 

-keepattributes *Annotation*

和每一个模型类:

-keep class com.xyz.components.**
-keepclassmembers class com.xyz.components.** { *; } 

我不喜欢半句一位,但我厌倦了试图找到一个更好的解决方案。

I don't like the last part one bit, but I'm tired of trying to find a better solution.