json 带有proguard的Jackson未正确发送数据

xwmevbvl  于 5个月前  发布在  其他
关注(0)|答案(1)|浏览(71)

我正在使用ObjectMapper和JsonProperty处理com.fasterxml.jackson库。
我浏览了几乎所有的stackoverflow问题,但找不到答案。
Json数据被proguard损坏。

Json proguard时生成的数据:

{"a":{"a":"Oneil Hooper","b":""},"b":[{"a":"1656952356532","b":0,"q":""} ],"c":["+1986535623355"]}

字符串

我想要的数据:

{"displayName":{"name":"Oneil Hooper","surname":""},"b":[{"phoneNumber":"+1656952356532","b":0,"q":"" }],"c":["+1986535623355"]}


我的Jacksonproguard:

-keep @com.fasterxml.jackson.annotation.JsonIgnoreProperties class * { *; }
-keep class com.fasterxml.** { *; }
-keep class org.codehaus.** { *; }
-keepnames class com.fasterxml.jackson.** { *; }
-keepclassmembers public final enum com.fasterxml.jackson.annotation.JsonAutoDetect$Visibility {
     public static final com.fasterxml.jackson.annotation.JsonAutoDetect$Visibility *;
}

-keep class com.fasterxml.jackson.databind.ObjectMapper {
     public <methods>;
     protected <methods>;
}

-keep class * implements java.io.Serializable
-keep class com.fasterxml.jackson.databind.ObjectWriter {
     public ** writeValueAsString(**);
}
-dontwarn com.fasterxml.jackson.databind.**
-keep class * implements com.fasterxml.jackson.core.type.TypeReference

nhhxz33t

nhhxz33t1#

像这样添加它修复了它:谢谢

-keep class * {
        @com.fasterxml.jackson.annotation.JsonCreator
        <fields>;
        @com.fasterxml.jackson.annotation.JsonProperty
        <fields>;
        @com.fasterxml.jackson.annotation.JsonCreator
        <methods>;
        @com.fasterxml.jackson.annotation.JsonProperty
        <methods>;
    }
    
    -keep class com.fasterxml.** { *; }
    -keep class org.codehaus.** { *; }
    -keepnames class com.fasterxml.jackson.** { *; }

字符串

相关问题