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中不存在的代码 目前市面上有很多第三方应用加固的平台, 如果新应用发布前需要扫描或者加固的话,可以先试试免费的,例如腾讯御安全,建议自己先去加固测试下。

美国云服务器 1核 1G 100M 10G防御 39元/月 物语云计算

物语云计算(MonogatariCloud)是一家成立于2016年的老牌国人商家,主营国内游戏高防独服业务,拥有多家机房资源,产品质量过硬,颇有一定口碑。本次带来的是美国圣何塞 Equinix 机房的高性能I9-10980XE大带宽VPS,去程CN2GIA回程AS9929,美国原生IP,支持解锁奈飞等应用,支持免费安装Windows系统。值得注意的是,物语云采用的虚拟化技术为Hyper-V,资源全...

wordpress外贸集团企业主题 wordpress高级推广外贸主题

wordpress外贸集团企业主题,wordpress通用跨屏外贸企业响应式布局设计,内置更完善的外贸企业网站优化推广功能,完善的企业产品营销展示 + 高效后台自定义设置。wordpress高级推广外贸主题,采用标准的HTML5+CSS3语言开发,兼容当下的各种主流浏览器,根据用户行为以及设备环境(系统平台、屏幕尺寸、屏幕定向等)进行自适应显示; 完美实现一套主题程序支持全部终端设备,保证网站在各...

陆零(¥25)云端专用的高性能、安全隔离的物理集群六折起

陆零网络是正规的IDC公司,我们采用优质硬件和网络,为客户提供高速、稳定的云计算服务。公司拥有一流的技术团队,提供7*24小时1对1售后服务,让您无后顾之忧。我们目前提供高防空间、云服务器、物理服务器,高防IP等众多产品,为您提供轻松上云、安全防护 为核心数据库、关键应用系统、高性能计算业务提供云端专用的高性能、安全隔离的物理集群。分钟级交付周期助你的企业获得实时的业务响应能力,助力核心业务飞速成...

android代码混淆为你推荐
离线包高德地图离线包使用后会省流量吗instagram电脑版苹果软件商店评出最佳摄影类软件有哪些?windowsmediawindows media player 是什么啊4k超高清视频下载哪里有4K片源下载啊?补充:刚入手了一个4k电视盒,小美盒子V9,说是支持4k。正好我的电视机是4k的,想知道哪里有得下载呢?有朋友说我傻,现在基本上没有4k片源下载,而且不知道什么时候才有。等到流行的时候也许这个机器又淘汰啦!我该怎么办啊?素数算法有能写出所有素数的公式吗excel大写金额怎么在excel中设置大写金额comexception5种常见的Exception!cursorlocation如何用ENVI把不同图像中的相同地点的某个像素点的值读出来。按时间把这个点的值连起来,。谢谢好人。防火墙技术应用防火墙的应用与研究论文微盟价格微盟现在怎么样?
187邮箱 132邮箱 cdn服务器 私人服务器 美国php主机 地址大全 网盘申请 英文站群 空间技术网 域名转入 supercache 网站加速 云服务是什么意思 杭州电信宽带 免费主页空间 数据湾 移动王卡 reboot cpu使用率过高怎么办 e-mail 更多