2297|0

1018

帖子

0

TA的资源

纯净的硅(中级)

楼主
 

Android代码学习中的误区解决 [复制链接]

 学习Android开发当中,会遇到很多的代码误区,Android环境就提供了proguard来进行代码混淆,这确实是一个非常有用的工具,但用起来也并不是那么容易的。下面就由卓跃教育为大家做一个介绍。
1.基本的配置
       eclipse下建立的android工程,就会生成proguard.cfg和project.properties,在后面的文件追加proguard.config=proguard.cfg就可以让前面的配置文件在export时生效。默认的那个文件有一些内容,这里给一个更通用点的。
2.打包出来的程序如何进行调试
       一旦打包出来,就不能用eclipse的logcat去看了,这里可以用android sdk中ddms.bat的tool来看,一用就发现和logcat其实还是一个东西,就是多了个设备的选择。
3.解决export打包的报错
       这个时候export提示“conversion to Dalvik format failed with error 1”错误,网上说法有非常多种,最后还是把proguard从4.4升级到4.8就解决了。升级办法很简单,就是把android sdk目录下的tool/proguard目录覆盖一下即可。
4.使用gson需要的配置
       当Gson用到了泛型就会有报错,会提示“Missing type parameter”。最后找到一个资料给了一个解决办法,另外用到了JsonObject,提交的Object里面的members居然被改成了a。所以上面给的东西还不够,还要加上用到自己拼接的JsonObject  keep class com.google.gson.JsonObject { *; }   
个人建议减少这些依赖包混淆带来的麻烦,干脆都全部保留不混淆。例如
keep class com.badlogic.** { *; }
keep class * implements com.badlogic.gdx.utils.Json*
keep class com.google.** { *; }
5.验证打包效果
       利用了apktool的反编译工具,把打包文件又解压了看了一下,如果包路径、变量名、类名、方法名这些变化和你期望一致,那就可以了。
命令:apktool.bat d xxx.apk destdir。
总结:这个东西用起来也不是很简单,特别当大家的程序用到的高级特性多,这就更容易出问题。另外proguard的参数看起来确实也有点不好理解,打包过程慢,测试也比较浪费时间。东西虽好用,但真不是那么容易上手看,需要大家在这方面下一番功夫去了解的。

此帖出自信息发布论坛
点赞 关注
个人签名android培训
 
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表