今天处理时遇到一个神坑坑,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.**{*; }

更多相关文章

  1. Android之给ImageView添加点击效果
  2. parseSdkContent failed Could not initialize class android.gr
  3. android修改包名的问题
  4. Android图片加载后变小
  5. Android主题换肤实现
  6. Android获得Root权限
  7. Docker+Jenkins持续集成环境(5): android构建与apk发布
  8. 添加白名单功能
  9. android values-v11和values-v14文件夹是干啥的?

随机推荐

  1. 问答-服务器集群负载均衡原理?
  2. 单点登录最简单的方法
  3. MongoDB Go Driver使用帮助文档
  4. vmware如何将主机硬盘挂载到虚拟机
  5. MongoDB 排序内存超过 32M 限制
  6. Ubuntu中安装vmware tools工具
  7. MongoDB基础命令及操作 (仅学习)
  8. Oralce数据库设计规范V3
  9. 2.4.18预读算法详解
  10. 微服务架构 vs. SOA架构