微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

期望一个 int 但启用了 proguard 的 BOOLEAN

如何解决期望一个 int 但启用了 proguard 的 BOOLEAN

我有这个 json

 x = [1,[2,3,6],[1,83],4,12]]
    sum=0
    def f(x):
        global sum
        for i in x:
            if type(i) == list:
                g = 0
                for add in i:
                    g += add
                i = g
            sum += i
    f(x)
    print(sum)

我有这个 kotlin 课程

{
  ...
  "is_new_payment_flow": true
  ...
}

现在,如果我尝试将 json 与类映射,它会给我 @JsonClass(generateAdapter = true) data class Example( ... @Json(name = "is_new_payment_flow") val isNewPaymentFlow: Boolean ... ) 错误,我已经检查了字节码,即使在混淆器混淆之后它也是布尔值。

据我所知,字节码中的 Expected an int but was BOOLEAN 表示 isNewPaymentFlow : Z,这就是字节码的样子。使用 Android Studio 中的 Z 选项从 apk 中获取的字节码

最后,当我在 kotlin 类中将 boolean 更改为 Build -> Analyse APK 时,它会正常工作

注意:此问题仅发生在仅启用 proguard 的发布构建类型中

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。