android代码混淆Android之如何混淆代码和相关配置

android代码混淆  时间:2021-06-23  阅读:()

对已经混淆的Android代码,如何进行反编译

android代码混淆是指安卓开发者或者组织为了防止自己的产品敏感信息或者技术机密被人破解,而在生成apk文件的时候,通过设置一些替换规则,使java文件中指定的代码类的名字或者成员名字变为没有任何意义的字母,然后编译成class文件的过程。

已经混淆过的android代码反编译出来的都是一些没有任何意义的名字,是很难读懂的。

没有好的办法。

android如何将混淆代码还原?

当混淆后的代码输出一个堆栈信息时,方法名是不可识别的,这使得调试变得很困难,甚至是不可能的。

幸运的是,当ProGuard运行时,它都会输出一个<project_root>/bin/proguard/mapping.txt文件,而这个文件中包含了原始的类,方法和字段名被映射成的混淆名字。

retrace.bat脚本(Window)或retrace.sh脚本(Linux,Mac OS X)可以将一个被混淆过的堆栈跟踪信息还原成一个可读的信息。

它位于<sdk_root>/tools/proguard文件夹中。

执行retrace工具的语法如下: retrace.bat|retrace.sh [-verbose] mapping.txt [<stacktrace_file>] 例如: retrace.bat -verbose mapping.txt obfuscated_trace.txt 如果你没有指定<stacktrace_file>,retrace工具会从标准输入读取。

android如何混淆代码

如果你没用到第三方的library或者jar包,那么只要在工程目录下project.properties里面,把#proguard.config=xxxxxx前面的#去掉就好了。

如果有第三方的jar包,那么把需要的配置加到proguard-project.txt里面就好。

Android之如何混淆代码和相关配置

项目发布之前混淆是必不可少的工作,混淆可以增加别人反编译阅读代码的难度,还可以缩小APK包。

使用步骤: 1、修改project.properties文件: Java代码 收藏代码 # To enable ProGuard to shrink and obfuscate your code, ment this (available properties: sdk.dir, user.home): # proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt 去掉proguard.config一行前面的#注释; 2、配置proguard-project.txt文件: 这个是主配置文件,里面配置哪些需要混淆,哪些不需要混淆的选项; 提供给外部的类、方法、变量等名字不能混淆; 在AndroidManifest中配置的类(Activity、Service等的子类及Framework类默认不会进行混淆) 不混淆Parcelable的子类,防止android.os.BadParcelableException Jni中调用的类 反射用到的类 项目中的实体类 3、导出项目: export签名项目。

4、查看是否混淆成功: 用反编译工具反编译并对比未混淆的代码; 5、运行ProGuard及其生成的文件介绍 在以release模式下打包apk时会自动运行ProGuard,这里的release模式指的是通过ant release命令或eclipse project->android tools->export signed(unsigned) application package生成apk。

在debug模式下为了更快调试并不会调用proguard。

如果是ant命令打包apk,proguard信息文件会保存于<project_root>/bin/proguard文件夹内;如果用eclipse export命令打包,会在<project_root>/proguard文件夹内。

其中包含以下文件: mapping.txt表示混淆前后代码的对照表,这个文件非常重要。

如果你的代码混淆后会产生bug的话,log提示中是混淆后的代码,希望定位到源代码的话就可以根据mapping.txt反推。

dump.txt描述apk内所有class文件的内部结构 seeds.txt列出了没有被混淆的类和成员 usage.txt列出了源代码中被删除在apk中不存在的代码 目前市面上有很多第三方应用加固的平台, 如果新应用发布前需要扫描或者加固的话,可以先试试免费的,例如腾讯御安全,建议自己先去加固测试下。

湖北22元/月(昔日数据)云服务器,国内湖北十堰云服务器,首月6折

昔日数据怎么样?昔日数据新上了湖北十堰云服务器,湖北十堰市IDC数据中心 母鸡采用e5 2651v2 SSD MLC企业硬盘 rdid5阵列为数据护航 100G高防 超出防御峰值空路由2小时 不限制流量。目前,国内湖北十堰云服务器,首月6折火热销售限量30台价格低至22元/月。(注意:之前有个xrhost.cn也叫昔日数据,已经打不开了,一看网站LOGO和名称为同一家,有一定风险,所以尽量不要选择...

云俄罗斯VPSJusthost俄罗斯VPS云服务器justg:JustHost、RuVDS、JustG等俄罗斯vps主机

俄罗斯vps云服务器商家推荐!俄罗斯VPS,也叫毛子主机(毛子vps),因为俄罗斯离中国大陆比较近,所以俄罗斯VPS的延迟会比较低,国内用户也不少,例如新西伯利亚机房和莫斯科机房都是比较热门的俄罗斯机房。这里为大家整理推荐一些好用的俄罗斯VPS云服务器,这里主要推荐这三家:justhost、ruvds、justg等俄罗斯vps主机,方便大家对比购买适合自己的俄罗斯VPS。一、俄罗斯VPS介绍俄罗斯...

柚子互联(34元),湖北十堰高防, 香港 1核1G 5M

柚子互联官网商家介绍柚子互联(www.19vps.cn)本次给大家带来了盛夏促销活动,本次推出的活动是湖北十堰高防产品,这次老板也人狠话不多丢了一个6.5折优惠券而且还是续费同价,稳撸。喜欢的朋友可以看看下面的活动详情介绍,自从站长这么久以来柚子互联从19年开始算是老商家了。六五折优惠码:6kfUGl07活动截止时间:2021年9月30日客服QQ:207781983本次仅推荐部分套餐,更多套餐可进...

android代码混淆为你推荐
网络视频下载器万能网络视频下载器 1.34怎么用代发邮件我想做邮件代发,怎么做效果好?pps官网pps官方下载,pps播放器下载sdfsdfsdfsdf小米手机投诉热线pat是什么格式pat 格式的文件用什么软件打开?webservice框架什么是webservice,什么情况下使用,如何使用broadcast播播……拼音comexception5种常见的Exception!腾讯合作伙伴大会从微信同程旅行买的机票怎么打印电子发票?怎么查微信注册时间微信号用了多久,怎么知道
bbr t牌 windows主机 sugarsync 密码泄露 tightvnc 圣诞节促销 华为云服务登录 谷歌台湾 如何登陆阿里云邮箱 认证机构 hosts文件 服务器是什么 asp.net虚拟主机 studentmain 文件传输 crontab 瓦工招聘 ddos攻击器 ddos攻击教程 更多