Android代码混淆-添加了Gson遇到的问题
2012-11-05 21:11
387 查看
折腾了好久。。。。。郁闷 -_-
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
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
相关文章推荐
- (转)Android代码混淆-添加了Gson遇到的问题
- Android项目proguard代码混淆遇到的一系列问题,外部jar,Gson包等
- Android项目proguard代码混淆遇到的一系列问题,外部jar,Gson包等
- 解决android使用gson解析json字符串,并使用混淆编译方式打包apk遇到的问题
- Android代码混淆时出现的问题(Gson)
- 解决android使用gson解析json字符串,并使用混淆编译方式打包apk遇到的问题
- ProGuard总结和混淆Android代码中遇到的问题的解决方法以及寻找getSomething游戏
- 解决android使用gson解析json字符串,并使用混淆编译方式打包apk遇到的问题
- 解决android使用gson解析json字符串,并使用混淆编译方式打包apk遇到的问题
- android代码混淆后gson无法解析问题
- android代码混淆后gson无法解析问题
- android 代码混淆及问题大集锦
- android添加library遇到的问题(adding libararies with resources)
- android添加library遇到的问题(转)
- Android用Proguard混淆代码遇到的… 分类: Android安装及配置 2014-05-30 10:55 160人阅读 评论(0) 收藏
- android媒体库添加解码插件遇到的一些问题
- Android 混淆代码的时候出现问题
- 代码混淆遇到的问题
- Android Studio代码混淆添加
- Eclipse打包Android混淆代码降低代码可读性时,出现的Warning:can't find referenced class问题的解决方案