当前位置:首页 » 编程软件 » 项目源码丢失反编译

项目源码丢失反编译

发布时间: 2024-09-30 06:27:07

‘壹’ 反编译为什么不能得到源代码

每个人的编程方式和方法都不一样的,反汇编编译的绝大部分都对不上的。这种方法不用想,有这些时间自己都编出来了。

‘贰’ 如何反编译apk文件得到源码和XML文件

最近因为一些事所以需要得到师兄的某个apk的源代码,但师兄说那个项目包已经删了,哎,没办法,只能自己想办法了。后来找到了反编译apk的方法,现在拿出来分享下。其实这个方法网上都有,我只是记载一下自己这段时间的学习情况。
1.下载工具
首先,要反编译需要下面这
4个工具:
dex2jar:将apk中的classes.dex转化成Jar文件。
JD-GUI:反编译工具,可以直接查看Jar包的源代码。
apktool:反编译工具,通过反编译APK中XML文件,直接可以查看。
apktool-install-windows-r05-ibot:辅助windows批处理工具。
2.解压apk
直接右键解压apk就行了,这没什么好说的。【解压后会有个dex后缀的文件,下面会用到】
3.反编译dex文件
1)解压下载的dex2jar,把解压后的文件夹放到系统盘跟目录中并把这个目录加到系统path变量中,就可以直接用:dex2jar.bat或dex2jar.sh转换dex文件了。
2)DOS行命令如下:dex2jar.bat
xx\classes.dex(xx是classes.dex文件所在的路径)。
将在同目录得到普通jar包:【classes_dex2jar.jar】,就可以用处理普通jar包的方法来反编译这个jar包得到原文件。
4.反编译jar文件
1)解压压缩文件JD-GUI
2)运行该文件夹里的jd-gui.exe,打开上面生成的jar包,
即可看到源代码了。
5.反编译xml文件
为什么要发编译xml文件呢?因为直接解压apk得到的xml文件是乱码来的,我们需要用工具把它调会正常来
具体操作方法:
1)将下载的apktool和apktool-install-windows-r05-ibot两个包解压到同一个文件夹下,这个文件夹有三个文件:aapt.exe,apktool.bat,apktool.jar。
2)把这个文件夹也放到系统盘的根目录中并把这个目录加到path变量中。以HelloWord.apk为例:
3)在DOS命令行中输入:apktool
d
xx\HelloWord.apk
HelloWord得到HelloWord文件夹,此文件夹中的xml文件就是编译好的可以正常查看的文件。
6.后话
不过,说到底反编译还是反编译,还是不能完全地还原出真正的源代码的,比如一般会出现下面这样的问题:
setContentView(2130903048);
在真正的源代码中其实是这样的:
setContentView(R.layout.welcome)

热点内容
忍3无伤脚本 发布:2024-11-05 19:11:40 浏览:301
江苏云服务器散热器定制 发布:2024-11-05 18:50:15 浏览:719
投资分红网站源码 发布:2024-11-05 18:36:38 浏览:503
我的世界推荐适合萌新的服务器 发布:2024-11-05 18:30:03 浏览:577
c语言考级 发布:2024-11-05 18:16:54 浏览:504
易语言不能编译安卓app吗 发布:2024-11-05 18:14:11 浏览:836
c语言重点知识 发布:2024-11-05 18:04:53 浏览:641
算法分家 发布:2024-11-05 17:55:39 浏览:469
手游云顶怎么确定服务器 发布:2024-11-05 17:52:03 浏览:777
天籁选哪个配置2021 发布:2024-11-05 17:50:26 浏览:812