fastJson混淆遇到的坑

今天在给代码添加混淆之后,运行app,发现涉及到网络请求的地方页面并没有成功的得到数据更新,查看logcat后发现,网络请求data字段经过解析后,始终返回的是null,让我很是郁闷,之前明明都是正常的呀,于是就估摸着是不是混淆带来的问题,关闭混淆后,重新运行app,又一切正常,因此,问题定位就确定了,肯定是混淆不恰当引起的问题。

根据fastJson的教程,我添加了对应的混淆代码。

-dontwarn com.alibaba.fastjson.**

-keep class com.alibaba.fastjson.** { *; }

-keepattributes Signature

反复搜索,没有问题啊,网络上大家伙也都是这么设置的,那问题出在哪里呢,很是纠结。最后跟朋友讨论,原来需要把实体(entry)禁止混淆,这样就不会有问题了。

-keep public class com.xxx.xxx.bean.** {

public void set(**);

public *** get*();

public *** is*();

}

附上禁止混淆实体的规则,在此做一下记录。也希望能帮助到遇到同样问题的同学

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,180评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,138评论 25 709
  • 1.首先需要在app下的build.gradle下配置,true表示编译时会混淆代码\ 2.在proguard-r...
    Thomas_yy阅读 6,716评论 0 6
  • 在Android Studio当中混淆APK实在是太简单了,借助SDK中自带的Proguard工具,只需要修改ap...
    自由翱翔de锤锤阅读 2,577评论 1 2
  • 2017-5-27 晴 他:“我上班打电话的时候,只要老板在旁边,我说话就会不自然,甚至会莫名的紧张,我一个人打就...
    实干作品阅读 236评论 0 2