android代码混淆时,如何防止第三方jar包被混淆导致程序出错
代码混淆是给其他人破解自己的程序带来更多困难,但混淆不能影响我们程序的正常运行.最近在代码混淆时出现一个问题:就是第三方jar被混淆时出现程序错误,错误主要是说找不到相关的类.
这个问题也不奇怪,我们要使用的第三方jar包被混淆成我们程序不能认识的代码,结果肯定找不到类.我们要如何解决这个问题呢?
解决方案:
1.首先把android工程中project.properties文件proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt前注释符"#"号去掉.
2.找到文件proguard-project.txt,打开并添加如下内容:
-ignorewarnings # 作用是忽略混淆时出现的警告
-libraryjars libs\httpcore-4.0.1.jar # 作用指定第三方jar包路径
-dontwarn org.apache.* # 忽略警告
-keep class org.apache.** { *;} # 指定我们不进行混淆的类包, 其中org.apache.**{*;}为类包名
3.导出apk包,再用破解工作破解,你会发现代码被混淆(注意:正常情况下,工程bin目录下生成的apk包是没被混淆的包)
android代码混淆时,如何防止第三方jar包被混淆导致程序出错相关推荐
- Android笔记:防反编译、代码混淆中,解决第三方jar包不被混淆的一些心得,及gson防混淆方法...
为了防止代码被反编译,一般在签名导出前需要对代码进行混淆.最近发现自己的一个项目工程在代码混淆后,使用中出现了异常.以下是自己这几天在解决代码混淆以及引入第三方jar包导致混淆出现的问题处理的一些心得 ...
- Android Studio 在项目中引用第三方jar包
在Android Studio项目中引用第三方jar包的方法: 步骤: 1.在build.gradle文件中添加如下代码: 备注:要添加在Android作用域下 sourceSets {main {j ...
- Android安卓开发-eclipse正确添加第三方jar包
本文转载自http://www.cnblogs.com/developerY/archive/2013/04/18/3027997.html,在此对原作者表示感谢! 在android项目中添加第三方j ...
- android.mk 添加v7_Android.mk引入第三方jar包和so库文件的方法
以SystemUI为例,如果需要在SystemUI中引入第三方jar包以及so库,可作如下处理: 首先,在frameworks\base\packages\SystemUI下新建libs目录: 将需要 ...
- Java代码安装maven jar_maven安装本地jar到本地仓库(引入第三方jar, maven打包提示程序包不存在)...
有时使用的jar包没有被maven仓库收藏,但pom中却要用到,这个时候我们就需要将jar安装到本地仓库中了.本文以javailp为例进行说明.(曾在对接第三方支付的时候需要导入第三方的jar包, ...
- android源码编译jar,在android源码编译中导入第三方jar包
源码编译,我们可以只留下app的src,res目录和androidmanifest.xml文件,在app的根目录添加一个android.mk文件,还有我们需要导入的jar包,我这里是libjsoup- ...
- 解决android代码编译时内存不足
一.在Linux编译gcc时,遇到编译错误,究其根源是因为内存不足,这时可以通过修改swap大小解决问题 设置和修改Linux的swap分区大小 相关操作如下: 查看当前分区情况 free -m 增加 ...
- android 混淆过滤,android studio 代码混淆如何忽略第三方jar包
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 最近在打包混淆时,遇到一个问题,混淆编译都不出错,运行出错,一般遇到这种问题,肯定是在运行的地方有代码被混淆了,经过错误 ...
- Android Proguard 不混淆所有第三方jar(忽略配置设置)
今天给大家分享一个只混淆自己的项目代码而不混淆所有第三方jar的方法(没错,是所有的第三方都不进行混淆,无论来什么第三方,都不需要动混淆配置) 不混淆所有第三方重大突破 今天又被同事逼迫看了一下Pro ...
最新文章
- cf relevent R package
- 网卡绑定技术linux c,Linux多网卡绑定
- java三级考试题库_JAVA题库:格林模拟试题三(下)
- Hihocoder 1632 : Secret Poems 思维|技巧
- form表单序列化成json数据 将空值用空字符串代替(form表单中checkBox数据会用逗号隔开拼接成字符串)...
- mint-ui之toast使用(messagebox,indicator同理)
- 【Flink】Flink 设置JVM参数
- opentsdb+grafana监控系按使用总结
- html5页面签字,html5 canvas实现的手机端签字板
- 针对数据泵导出 (expdp) 和导入 (impdp)工具性能降低问题的检查表 (文档 ID 1549185.1)...
- 基于《知网》的词汇语义相似度计算
- 3 Layer and 3 Tier
- 主机甲和乙已建立了 TCP 连接,甲始终以 MSS=1KB 大小的段发送数据,并一直有数据 发送;乙每收到一个数据段都会发出一个接收窗口为 10KB 的确认段。若甲在 t 时刻发生超 时时拥塞窗口为
- 浏览器的input禁用输入法
- Android 画布Canvas之控件连线操作
- 神级操作丨用 Python 将微信热文转换成Word文档
- 【Avro二】Avro RPC框架
- 前端Vue.js框架是什么?有哪些特点?
- 18025 小明的密码
- 《乔布斯传》经典摘录(七)