工程带有Fastjson或Gson等的第三方包的混淆配置

原创 2013年12月04日 15:23:02

工程中使用了fastjson,无奈,对工程做混淆的时候总是报错过不去,后来过去了又出现使用fastjson的地方数据不正确的问题,试了好多办法才成功,废话不多说,添加的代码:

##---------------Begin: proguard configuration for fastjson  ----------

#-keepnames class * implements java.io.Serializable
-keep public class * implements java.io.Serializable {
        public *;
}
-keepclassmembers class * implements java.io.Serializable {
    static final long serialVersionUID;
    private static final java.io.ObjectStreamField[] serialPersistentFields;
    private void writeObject(java.io.ObjectOutputStream);
    private void readObject(java.io.ObjectInputStream);
    java.lang.Object writeReplace();
    java.lang.Object readResolve();
}
-dontwarn android.support.**
-dontwarn com.alibaba.fastjson.**

-dontskipnonpubliclibraryclassmembers
-dontskipnonpubliclibraryclasses

-libraryjars libs/fastjson.jar
-keep class com.alibaba.fastjson.** { *; }

-keepclassmembers class * {
public <methods>;
}

##---------------End: proguard configuration for fastjson  ----------
Gson的混淆:

##---------------Begin: proguard configuration for Gson  ----------
# Gson uses generic type information stored in a class file when working with fields. Proguard
# removes such information by default, so configure it to keep all of it.
-keepattributes Signature

# For using GSON @Expose annotation
-keepattributes *Annotation*

# Gson specific classes
-keep class sun.misc.Unsafe { *; }
#-keep class com.google.gson.stream.** { *; }


# Application classes that will be serialized/deserialized over Gson
-keep class cn.howie.base.data.** { *; }
-keep class cn.howie.base.bean.** { *; }


##---------------End: proguard configuration for Gson  ----------
其中红色部分必须为自己项目中的实体类,否则混淆后无法正常显示数据,网上有好多博客都很坑,直接把google文档的代码直接贴出来了,一定要修改红色部分。


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

FastJson混淆注意的地方

fastjson的使用的廣泛性是有目共睹的,如此廣受好評的開源項目來自國人開發,深感驕傲 使用的時候如果出現debug好好的,不混淆的時候也好好的,一混淆就出現各種問題,如果定位到是fastjson到...

第三方包fastjson签名混淆后报错解决

在使用了fastjson的项目签名混淆之后运行突然崩溃,提示 com.alibaba.fastjson.JSONException: default constructor not found. c...

Android 第三方Jar包FastJson 代码混淆时的解决方法

我们做AndroidApp软件的时候,经常会对App进行签名打包和代码混淆,在工程中没有使用第三方Jar文件的时候不用考虑很多因素,现在要说的是当你在你的工程使用使用了FastJson这个快速解析Js...

fastjson: Release版本混淆异常问题

记录一下在打debug包时库fastjson可以正常使用;但是在打Release包时出现异常的问题。场景:debug包测试正常;打 混淆包 数据不显示; 解决在混淆中添加如下: -keepattr...

工程带有Fastjson等的第三方包的混淆配置

工程中使用了fastjson,无奈,对工程做混淆的时候总是报错过不去,后来过去了又出现使用fastjson的地方数据不正确的问题,试了一个晚上,最后得到一个可行的配置,如下 我在原先的基础上...

fastjson混淆

在proguard-project.txt文件加入忽略警告,忽略lib,忽略类 -dontwarn com.alibaba.fastjson.** -libraryjars libs/fastjs...

fastjson使用过程中的坑

最近在工作中用到了fastjson,遇到了一些坑,在这里总结一下。 简介 首先,介绍一下fastjson。fastjson是由alibaba开源的一套json处理器。与其他json处理器(如G...
  • zgzczzw
  • zgzczzw
  • 2017年05月16日 21:31
  • 1844

fastjson混淆包报错

-dontwarn com.alibaba.fastjson.** -libraryjars /libs/fastjson-1.1.26-android.jar -keep class com...

android项目混淆打包注意事项

以下为我此期项目中的关于混淆打包的总结: (本人第一次混淆打包,呵呵,错误很多!列了一些比较头疼的) 一、项目混淆过程中注意事项: 由于我的sdk版本较高,因此新建android项目下只有pro...

google gson 使用proguard混淆代码注意事项

这里不介绍怎样开启代码混淆功能。具体方法可以参照: http://developer.android.com/tools/help/proguard.html http://proguard.sou...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:工程带有Fastjson或Gson等的第三方包的混淆配置
举报原因:
原因补充:

(最多只允许输入30个字)