学习android这些天,学会反编译后顿时伤心了
学习android好多年,学会反编译后顿时伤心了,oh my God !! 自己亲手试着反编译自己的APk 后竟然可以看到自己的布局
哎呀,学习android好多年,一下回到解放前啊,写本文的目的是在于学习android的开发技术,请同学们不要有非分之想,等哪天我把QQ给破解了,死心吧,这个不可能的,其实现在好多牛逼的公司,人家是会在发布前给自己的APK进行反编译进行加密的。下面就看看简单的反编译步骤吧:
一、反编译得到Apk 得到java的源码
在得到源码之前需要下载dex2jar 和JD-GUI
dex2jar:用于将APK中的class.dex转换成jar包文件 下载地址如下:点击打开链接
JD-GUI :是一个反编译工具,可以直接查看Jar包中的源代码 下载地址如下:点击打开链接
反编译步骤如下:
1.将要反编译的APK的后缀名改为 zip,或者直接解压APK,复制其中的class.dex ,进入下载好的dex2jar,将复制的class.dex 粘贴在dex2jar.bat 所在的目录。
2.在DOS下运行,开始--cmd--进入dex2jar.bat 所在的目录,执行命令 dex2jar.bat classs.dex 这个命令dex2jar.bat dex2jar.bat 主要是生成class.dex.dex2jar.jar 文件
反编译成功后的文件如下:
3.运行JD-GUI中的jd-gui.exe可执行文件,打开文件所在的目录class.dex.dex2jar.jar 就可以看到源码了
这个方法生成的源代码貌似有点缺陷,可以发现是*.class 的文件,具体怎样把class文件反编译成java文件呢,这个你懂得的,百度吧。
二、反编译apk生成程序的源代码和图片、XML、资源文件
这个方法相对比较好一点,但还是需要工具apktool:下载地址如下:点击打开链接,需要下载apktool1.5.2.tar.bz2和apktool1.5.2.tar.bz2这两个文件
反编译步骤如下:
1. 解压文件在不同文件夹可以得到一下3个文件:aapt.exe,apktool.bat,apktool.jar
2.将要编译的Apk放在C盘中,Dos下进入apktool.bat所在的文件夹 执行 apktool.bat d c:\YingshiDemo.apk
ps: apktool d [apk文件名] [输出的文件名(不写默认在apktool.bat所在的文件夹中)]
反编译的效果如下:布局文件如下:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!