【发布时间】:2016-12-02 13:45:53
【问题描述】:
我在我的项目中使用 ProGuard,但它在 new Gson().toJson(Request) 中提供了错误的数据;
我要出去了
{"a":"manage","b":"689184d4418b6d975d9a8e53105d3382","c":"10","d":"76"}
而不是
{"username":"manage","password":"689184d4418b6d975d9a8e53105d3382","value":"10","store":"76"}
我的 ProGuard 规则
-dontwarn okio.**
-dontwarn retrofit2.Platform$Java8
-dontwarn sun.misc.Unsafe
-dontwarn org.w3c.dom.bootstrap.DOMImplementationRegistry
-dontwarn retrofit2.**
-keep class retrofit2.** { *; }
-keepattributes Signature
-keepattributes Exceptions
-keepclassmembers class rx.internal.util.unsafe.** {
long producerIndex;
long consumerIndex;
}
-keepclasseswithmembers class * {
@retrofit2.http.* <methods>;
}
-keep class com.google.gson.** { *; }
-keep class com.google.inject.** { *; }
我正在使用
compile 'com.squareup.retrofit2:converter-gson:2.0.0'
Android 中是否有新的推荐 ProGuard 配置用于 retrofit2:converter-gson?
【问题讨论】:
-
最简单的方法是保留您想要与 gson 一起使用的类。否则你可能想看看gson是否有一个注释来给一个字段一个名字——这就是我在我的应用程序中使用jackson的方式。
-
如何保留课程..任何规则
标签: android gson proguard retrofit2 android-proguard