Android代码混淆-添加了Gson遇到的问题

折腾了好久。。。。。郁闷 -_-


1.首先,project.properties里的配置文件变了,之前的项目一直都是在project.properties这个文件中添加一行proguard.config=proguard.cfg

然后proguard.cfg是自动生成的,不想被混淆的文件则从proguard.cfg中修改


2.应该是adt的以及build sdk的版本问题。 混淆代码变了,但是在project.properties文件中明显看到有一行提示语如下

# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):

#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt

将这两行取消注释,就可以打开混淆代码的效果了。proguard-project.txt文件内容则可以从${sdk.dir}/tools/proguard/目录中找到

有如下两个,proguard-android.txt 和proguard-android-optimize.txt大家认真看一下说明。

然后将其内容copy到proguard-project.txt中


3.解决Gson混淆之后无法解析Json的问题

|-首先明白Gson的特性,速度落后与阿里巴巴温高铁哥哥写的fastJson,但是fastJson有一些小bug~~~

FastJson的链接,详情请点击 http://www.iteye.com/topic/1113183

Gson 链接 详情请点击https://code.google.com/p/google-gson/

|-其次使用方法其实是实体类中属性的变量名要对应Json数据中的key值,要一模一样喔。

|-由这里就想到两点来解决这个问题

1。 是不要混淆GsonJar包中的类

2。 实现 java.io.Serializable的实体类中所有的属性名称也不能被混淆。

3. 以及为了序列化和反序列化,writeObject(); readObject(); writeReplace(); readResolve();亦不可被混淆



思路完毕。我把混淆配置文件proguard-project.txt上传一下给大家。

混淆配置文件下载地址

http://download.csdn.net/detail/forever_crying/4735749

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值