Android混淆之FastJSON坑java.lang.ClassCastException: com.alibaba.fastjson.JSONObject cannot be cast t...

今天处理时遇到一个神坑坑,java.lang.ClassCastException: com.alibaba.fastjson.JSONObject cannot be cast to xxxxx

原因是,代码混淆后,json找不到对应的类名了。需在混淆文件中,加入防止混淆的命令。
android的构建脚本用的语法是gradle文件,打开build.gradle文件,一般指定混淆文件的脚本如下:


android {
    buildTypes {
        release {
            minifyEnabled true // 是否混淆
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'  //android默认混淆规则 +  proguard-rules.pro中的自定义规则
        }
    }
}

打开proguard-rules.pro,添加如下3行规则:

-keepattributes Signature
-dontwarn com.alibaba.fastjson.**
-keep class com.alibaba.fastjson.**{*; }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容